Changeset efcb393 for chapter05/tcl.xml
- Timestamp:
- 05/03/2020 09:02:51 PM (4 years ago)
- Branches:
- 10.0, 10.0-rc1, 10.1, 10.1-rc1, 11.0, 11.0-rc1, 11.0-rc2, 11.0-rc3, 11.1, 11.1-rc1, 11.2, 11.2-rc1, 11.3, 11.3-rc1, 12.0, 12.0-rc1, 12.1, 12.1-rc1, arm, bdubbs/gcc13, ml-11.0, multilib, renodr/libudev-from-systemd, s6-init, trunk, xry111/arm64, xry111/arm64-12.0, xry111/clfs-ng, xry111/lfs-next, xry111/loongarch, xry111/loongarch-12.0, xry111/loongarch-12.1, xry111/mips64el, xry111/pip3, xry111/rust-wip-20221008, xry111/update-glibc
- Children:
- a715dec
- Parents:
- 9d719e2
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
chapter05/tcl.xml
r9d719e2 refcb393 4 4 <!ENTITY % general-entities SYSTEM "../general.ent"> 5 5 %general-entities; 6 <!ENTITY tdbc-ver "1.1.1"> 7 <!ENTITY itcl-ver "4.2.0"> 6 8 ]> 7 9 … … 47 49 packages. Installing three packages for testing purposes may seem 48 50 excessive, but it is very reassuring, if not essential, to know that the 49 most important tools are working properly. Even if the test suites are not 50 run in this chapter (they are not mandatory), these packages are required 51 most important tools are working properly. These packages are required 51 52 to run the test suites in <xref linkend="chapter-building-system"/>.</para> 52 53 … … 57 58 <para>Prepare Tcl for compilation:</para> 58 59 59 <screen><userinput remap="configure">cd unix 60 ./configure --prefix=/tools</userinput></screen> 60 <screen><userinput remap="configure">SRCDIR=$(pwd) 61 cd unix 62 ./configure --prefix=/usr \ 63 --mandir=/usr/share/man \ 64 $([ "$(uname -m)" = x86_64 ] && echo --enable-64bit)</userinput></screen> 65 66 <variablelist> 67 <title>The meaning of the configure options:</title> 68 69 <varlistentry> 70 <term><parameter>$([ "$(uname -m)" = x86_64 ] && echo --enable-64bit)</parameter></term> 71 <listitem> 72 <para>The construct <parameter>$(<shell command>)</parameter> 73 is replaced by the output of the chell command. Here this output is 74 empty if running on a 32 bit machine, and is 75 <parameter>--enable-64bit</parameter> if running on a 64 bit machine. 76 </para> 77 </listitem> 78 </varlistentry> 79 80 </variablelist> 61 81 62 82 <para>Build the package:</para> 63 83 64 <screen><userinput remap="make">make </userinput></screen>84 <screen><userinput remap="make">make 65 85 66 <para>Compilation is now complete. As discussed earlier, running the test 67 suite is not mandatory for the temporary tools here in this chapter. To run68 the Tcl test suite anyway, issue the following command:</para>86 sed -e "s|$SRCDIR/unix|/usr/lib|" \ 87 -e "s|$SRCDIR|/usr/include|" \ 88 -i tclConfig.sh 69 89 70 <screen><userinput remap="test">TZ=UTC make test</userinput></screen> 90 sed -e "s|$SRCDIR/unix/pkgs/tdbc&tdbc-ver;|/usr/lib/tdbc&tdbc-ver;|" \ 91 -e "s|$SRCDIR/pkgs/tdbc&tdbc-ver;/generic|/usr/include|" \ 92 -e "s|$SRCDIR/pkgs/tdbc&tdbc-ver;/library|/usr/lib/tcl8.6|" \ 93 -e "s|$SRCDIR/pkgs/tdbc&tdbc-ver;|/usr/include|" \ 94 -i pkgs/tdbc&tdbc-ver;/tdbcConfig.sh 71 95 72 <para>The Tcl test suite may experience failures under certain host 73 conditions that are not fully understood. Therefore, test suite failures 74 here are not surprising, and are not considered critical. The 75 <parameter>TZ=UTC</parameter> parameter sets the time zone to Coordinated 76 Universal Time (UTC), but only 77 for the duration of the test suite run. This ensures that the clock tests 78 are exercised correctly. Details on the <envar>TZ</envar> environment 79 variable are provided in <xref linkend="chapter-config"/>.</para> 96 sed -e "s|$SRCDIR/unix/pkgs/itcl&itcl-ver;|/usr/lib/itcl&itcl-ver;|" \ 97 -e "s|$SRCDIR/pkgs/itcl&itcl-ver;/generic|/usr/include|" \ 98 -e "s|$SRCDIR/pkgs/itcl&itcl-ver;|/usr/include|" \ 99 -i pkgs/itcl&itcl-ver;/itclConfig.sh 100 101 unset SRCDIR</userinput></screen> 102 103 <para>The various <quote>sed</quote> after the <quote>make</quote> command 104 remove references to the build directory from various configuration files, 105 and replaces them with the install directory. This is not mandatory 106 for the remaining of LFS, but may be needed in case a package built later 107 uses Tcl.</para> 80 108 81 109 <para>Install the package:</para> … … 86 114 be removed later:</para> 87 115 88 <screen><userinput remap="install">chmod -v u+w / tools/lib/libtcl&tcl-major-version;.so</userinput></screen>116 <screen><userinput remap="install">chmod -v u+w /usr/lib/libtcl&tcl-major-version;.so</userinput></screen> 89 117 90 118 <para>Install Tcl's headers. The next package, Expect, requires them … … 95 123 <para>Now make a necessary symbolic link:</para> 96 124 97 <screen><userinput remap="install">ln -s v tclsh&tcl-major-version; /tools/bin/tclsh</userinput></screen>125 <screen><userinput remap="install">ln -sfv tclsh&tcl-major-version; /usr/bin/tclsh</userinput></screen> 98 126 99 127 </sect2>
Note:
See TracChangeset
for help on using the changeset viewer.