5.11. Tcl-core-8.6.3

The Tcl package contains the Tool Command Language.

Approximate build time: 0.8 SBU
Required disk space: 67 MB

5.11.1. Installation of Tcl-core

This package and the next three (Expect, DejaGNU, and Check) are installed to support running the test suites for GCC and Binutils and other packages. Installing four packages for testing purposes may seem excessive, but it is very reassuring, if not essential, to know that the most important tools are working properly. Even if the test suites are not run in this chapter (they are not mandatory), these packages are required to run the test suites in Chapter 6.

Note that the Tcl package used here is a minimal version needed to run the LFS tests. For the full package, see the BLFS Tcl procedures.

5.11.2. 32-bit Installation

Prepare Tcl for compilation:

cd unix
./configure --prefix=/tools --libdir=/tools/lib32 CC="gcc -m32" CXX="g++ -m32"

Build the package:

make

Compilation is now complete. As discussed earlier, running the test suite is not mandatory for the temporary tools here in this chapter. To run the Tcl test suite anyway, issue the following command:

TZ=UTC make test

The Tcl test suite may experience failures under certain host conditions that are not fully understood. Therefore, test suite failures here are not surprising, and are not considered critical. The TZ=UTC parameter sets the time zone to Coordinated Universal Time (UTC), but only for the duration of the test suite run. This ensures that the clock tests are exercised correctly. Details on the TZ environment variable are provided in Chapter 7.

Install the package:

make install

Make the installed library writable so debugging symbols can be removed later:

chmod -v u+w /tools/lib32/libtcl8.6.so

Clean up the build directory before moving on to the next platform:

make clean
cd ..

5.11.3. x32 ABI Installation

Prepare Tcl for compilation:

cd unix
./configure --prefix=/tools --libdir=/tools/libx32 CC="gcc -mx32" CXX="g++ -mx32"

Build the package:

make

Compilation is now complete. As discussed earlier, running the test suite is not mandatory for the temporary tools here in this chapter. To run the Tcl test suite anyway, issue the following command:

TZ=UTC make test

The Tcl test suite may experience failures under certain host conditions that are not fully understood. Therefore, test suite failures here are not surprising, and are not considered critical. The TZ=UTC parameter sets the time zone to Coordinated Universal Time (UTC), also known as Greenwich Mean Time (GMT), but only for the duration of the test suite run. This ensures that the clock tests are exercised correctly. Details on the TZ environment variable are provided in Chapter 7.

Install the package:

make install

Make the installed library writable so debugging symbols can be removed later:

chmod -v u+w /tools/libx32/libtcl8.6.so

Clean up the build directory before moving on to the next platform:

make clean
cd ..

5.11.4. 64-bit Installation

Prepare Tcl for compilation:

cd unix
./configure --prefix=/tools

Build the package:

make

Compilation is now complete. As discussed earlier, running the test suite is not mandatory for the temporary tools here in this chapter. To run the Tcl test suite anyway, issue the following command:

TZ=UTC make test

The Tcl test suite may experience failures under certain host conditions that are not fully understood. Therefore, test suite failures here are not surprising, and are not considered critical. The TZ=UTC parameter sets the time zone to Coordinated Universal Time (UTC), also known as Greenwich Mean Time (GMT), but only for the duration of the test suite run. This ensures that the clock tests are exercised correctly. Details on the TZ environment variable are provided in Chapter 7.

Install the package:

make install

Make the installed library writable so debugging symbols can be removed later:

chmod -v u+w /tools/lib/libtcl8.6.so

Install Tcl's headers. The next package, Expect, requires them to build.

make install-private-headers

Now make a necessary symbolic link:

ln -sv tclsh8.6 /tools/bin/tclsh

5.11.5. Contents of Tcl-core

Installed programs: tclsh (link to tclsh8.6) and tclsh8.6
Installed library: libtcl8.6.so, libtclstub8.6.a

Short Descriptions

tclsh8.6

The Tcl command shell

tclsh

A link to tclsh8.6

libtcl8.6.so

The Tcl library

libtclstub8.6.a

The Tcl Stub library