aboutsummaryrefslogtreecommitdiffstats
path: root/chapter05/tcl.xml
blob: 4788f38757e2f2e79d0012914dada4cb2280b315 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
<sect1 id="ch-tools-tcl" xreflabel="Tcl">
<title>Installing Tcl-&tcl-version;</title>
<?dbhtml filename="tcl.html" dir="chapter05"?>

<para>The Tcl package contains the Tool Command Language.</para>

<screen>&buildtime; &tcl-time-tools; 
&diskspace; &tcl-compsize-tools;</screen>

&aa-tcl-down;
&aa-tcl-dep;

<sect2><title>&nbsp;</title><para>&nbsp;</para></sect2>

<sect2>
<title>Installation of Tcl</title>

<para>This package and the next two are only installed to be able to run the 
test suites for GCC and Binutils. Installing three packages just for testing 
purposes may seem like overkill, but it is very reassuring, if not essential, 
to know that our most important tools are working properly. Even if you are
not running the test suites here in this chapter as per our recommendation,
these packages are still required for the test suites in the next
chapter.</para>

<para>Prepare Tcl for compilation:</para>

<screen><userinput>cd unix
./configure --prefix=/tools</userinput></screen>

<para>Build the package:</para>

<screen><userinput>make</userinput></screen>

<para>As discussed earlier, we don't recommend running the test suites for the
temporary tools here in this chapter. If you still want to run the Tcl test
suite anyway, the following command will do so. However, you should be aware
that the Tcl test suite is sometimes known to experience failures under certain
host conditions that are not fully understood. Therefore, test suite failures
here are not surprising, but are not considered critical:</para>

<screen><userinput>TZ=UTC make test</userinput></screen>

<para>The meaning of the make parameter:</para>

<itemizedlist>
<listitem><para><userinput>TZ=UTC</userinput>: This 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 the clock tests are
exercised correctly. More information on the TZ environment variable will be
given later on in <xref linkend="chapter07"/>.</para></listitem>
</itemizedlist>

<para>Sometimes package test suites will give false failures. You can
consult the LFS Wiki at <ulink url="&wiki-root;"/> to verify that these
failures are normal. This applies to all tests throughout the book.</para>

<para>Install the package:</para>

<screen><userinput>make install</userinput></screen>

<!-- HACK - Force some whitespace to appease tidy -->
<literallayout></literallayout>

<warning><para><emphasis>Do not remove</emphasis> the
<filename>tcl&tcl-version;</filename> source directory yet, as the next package
will need its internal headers.</para></warning>

<!-- HACK - Force some whitespace to appease tidy -->
<literallayout></literallayout>

<para>Make a necessary symbolic link:</para>

<screen><userinput>ln -s tclsh8.4 /tools/bin/tclsh</userinput></screen>

</sect2>

&aa-tcl-shortdesc;
&aa-tcl-desc;

</sect1>