Back: Installation
Up: Installation
Forward: More legal stuff
 
Top: GNU Smalltalk User's Guide
Contents: Table of Contents
Index: Class index
About: About this document

1.1 Compiling GNU Smalltalk

The first thing to do to compile GNU Smalltalk is to configure the program, creating the makefiles and a `gstconf.h', which contains guesses at the system's peculiarities. This configuration is performed automatically by the `configure' shell script; to run it, merely type:
 
     ./configure

Options that you can pass to configure include --disable-dld, which precludes Smalltalk programs from dynamically linking libraries at run-time.

After you've configured GNU Smalltalk, you can compile the system by typing:
 
make

Smalltalk should compile and link with no errors. If compiling goes wrong you might want to check the commands used to launch the compiler. For example, be sure to check if your compiler has extensions which, if not enabled, don't make it ANSI compatible. If this is the case, type
 
make distclean
CFLAGS=needed command-line flags

and retry the configure/make process. In very particular cases, the configure script might miss the presence of a header file or a function on your system. You can patch the `config.cache' file created by the configure process. For example, if configure did not find your `unistd.h' header file, change the line reading
 
ac_cv_header_unistd_h=${ac_cv_header_unistd_h='no'}
to
 
ac_cv_header_unistd_h=${ac_cv_header_unistd_h='yes'}

and, again, retry the configure/make process.

The last lines of the make output should be like this:

 
export SMALLTALK_KERNEL=`cd ./kernel; pwd`; \
./gst -iQ dummy_file
make[2]: Leaving directory `/home/utente/devel-gst'
make[1]: Leaving directory `/home/utente/devel-gst'

At this point, you have a working GNU Smalltalk. Congratulations!!!

You will also want to store the Smalltalk sources and create the image file in the proper place (the image file contains a full snapshot of the status of the system). This is done automatically when you do a make install. Specifying --enable-modules as an option to configure will load Smalltalk packages in the automatically installed image. For example
 
./configure --enable-modules=Blox,TCP

will create an image with the Blox user interface toolkit and the TCP abstraction library built-in.




This document was generated on May, 12 2002 using texi2html