Hosted by |
|
Source Organization | Installed Files | Compiling on UNIX | Compiling on Windows | Compiling on Macintosh This page provides a "how to" guide for compiling Tcl from a source distribution. Tcl has been ported to a wide variety of platforms, and compilation has been made easier through GNU autoconf on UNIX. Before trying to compile Tcl, you may wish to check if a binary distribution is already available for your platform. Source Code OrganizationEach Tcl component has its source organized into the following structure, which is illustrated in the figure below:
Installed Software OrganizationWhen you install Tcl, it ends up in a different organization that supports an installation for multiple operating systems and machine types. You can define architecture-specific subdirectories (e.g., solaris-sparc) that contain programs and binary object files for that platform. The directory structure also supports installation of various Tcl extensions so they can be automatically found by the Tcl shell programs. For example, any subdirectory of the install/lib directory is searched for Tcl script packages, and any shared libraries in the architecture-specific lib directory can be dynamically loaded into the Tcl shells. After installation, Tcl files are kept in the following structure:
Configuring and Compiling on UNIXCompiling Tcl on UNIX has two steps: configure and make. In the simplest case you type the following commands to your shell: cd tcl8.5.0/unix configure options make make test make install ConfigureThe configure script tests your system for different compilation and linking options and generates a Makefile. The configure script is created by GNU autoconf. There are two commonly-specified configure options:
Note: be sure to use only absolute path names (those starting with "/")
in the To install into the directories /home/user/tcl/bin and /home/user/tcl/lib, for example, you should configure with: configure --prefix=/home/user/tcl Tcl's configure supports several options in addition to the standard
ones. Calling
If you wish to specify a particular compiler, set the Configuring for multiple architectures Suppose you are building for two platforms, Linux and Solaris, and
your installation will be shared by both kinds of hosts. You'll want
to use the There are two ways you can build for multiple platforms. The
first way is to build both platforms in the You can also build the different platforms in different
subdirectories of the cd /home/user/src/tcl8.5.0/unix mkdir solaris cd solaris /home/user/src/tcl8.5.0/unix/configure \ --prefix=/usr/local \ --exec-prefix=/usr/local/solaris-sparc Configuring Tk When you configure Tk you may need to tell it where Tcl was built
with the cd /home/user/src/tk8.5.0/unix mkdir solaris cd solaris /home/user/src/tk8.5.0/unix/configure \ --with-tcl=/home/user/src/tcl8.5.0/unix/solaris \ --prefix=/usr/local \ --exec-prefix=/usr/local/solaris-sparc Building with Make After you configure your Makefile, type "make". This will create
a library archive called Type "make test" to run an exhaustive test suite. In most cases
there should not be test failures. The Tk test suite, however, does
have some tests that depend on font metrics and the window manger,
which can vary across platforms. The Type "make install" to install Tcl binaries and script files in
the directories you specified with If you have trouble compiling Tcl, check out the platforms list. This is an on-line database of porting information. We make no guarantees that this information is accurate, complete, or up-to-date, but you may find it useful. If you get Tcl running on a new configuration, we would be happy to receive new information to add to the database. We're also interested in hearing how to change the configuration setup so that Tcl compiles out of the box on more platforms. Compiling on WindowsIn order to compile Tcl for Windows, you need the following items:
In the In order to build the executables, type the following commands in a command shell. nmake -f makefile.vc INSTALLDIR=path_to_your_install_dir nmake -f makefile.vc install INSTALLDIR=path_to_your_install_dir
The built files will be named Compiling Tk for windows follows a similar process. You must
compile Tcl before you compile Tk and in addition you must set
the variable nmake -f makefile.vc INSTALLDIR=path_to_your_install_dir TCLDIR=path_to_tcl_source nmake -f makefile.vc install INSTALLDIR=path_to_your_install_dir TCLDIR=path_to_tcl_source
This will produce a If you are compiling a Tcl extension for windows, please see the TEA reference. Compiling for MacintoshTcl 8.4 was the last version to support Mac Classic (OS <= 9). See the READMEs in the sources for Mac Classic build support. For Mac OS X, use the unix instructions above, with consideration for the following extra options:
|