Introduction to Tcl

The Tcl package contains the Tool Command Language, a robust general-purpose scripting language.

Package Information

Installation of Tcl



This package is also installed in LFS during the bootstrap phase. At the time of the LFS-6.1 release, 8.4.11 was not available. The significant difference between the two installations (other than installing to /usr) is that the package is installed in such a way that there is no need to keep the build directory around after installation.

Install Tcl by running the following commands:

export VERSION=8.4.11 &&
export V=`echo $VERSION | cut -d "." -f 1,2` &&
export DIR=$PWD &&
cd unix &&
./configure --prefix=/usr --enable-threads &&
make &&
sed -i "s:${DIR}/unix:/usr/lib:" &&
sed -i "s:${DIR}:/usr/include/tcl${V}:" &&
sed -i "s,^TCL_LIB_FILE='libtcl${V}',\

To test the results, issue: make test.

Now, as the root user:

make install &&
install -v -d /usr/include/tcl${V}/unix &&
install -v -m644 *.h /usr/include/tcl${V}/unix/ &&
install -v -d /usr/include/tcl${V}/generic &&
install -v -c -m644 ../generic/*.h /usr/include/tcl${V}/generic/ &&
rm -v -f /usr/include/tcl${V}/generic/{tcl,tclDecls,tclPlatDecls}.h &&
ln -v -nsf ../../include/tcl${V} /usr/lib/tcl${V}/include &&
ln -v -sf libtcl${V}.so /usr/lib/ &&
ln -v -sf tclsh${V} /usr/bin/tclsh

Clean up the unprivileged user's environment using the following commands:

unset VERSION &&
unset V &&
unset DIR

Command Explanations

--enable-threads: This switch forces the package to build with thread support.

sed -i ...: The Tcl package assumes that the source used to build Tcl is always kept around for compiling packages that depend on Tcl. These seds remove the reference to the build directory and replace them by saner system-wide locations.

install ...: These commands install the internal headers into a system-wide location.

ln -v -sf ...: These commands create compatibility symbolic links.


Installed Programs: tclsh and tclsh8.4
Installed Libraries: and libtclstub8.4.a
Installed Directories: /usr/include/tcl8.4 and /usr/lib/tcl8.4

Short Descriptions


is a symlink to the tclsh8.4 program.


is a simple shell containing the Tcl interpreter.

contains the API functions required by Tcl.

Last updated on 2005-08-01 13:29:19 -0600