source: general/prog/tcl.xml@ 5cc1126a

10.0 10.1 11.0 11.1 11.2 11.3 12.0 12.1 6.1 6.2 6.2.0 6.2.0-rc1 6.2.0-rc2 6.3 6.3-rc1 6.3-rc2 6.3-rc3 7.10 7.4 7.5 7.6 7.6-blfs 7.6-systemd 7.7 7.8 7.9 8.0 8.1 8.2 8.3 8.4 9.0 9.1 basic bdubbs/svn elogind gnome kde5-13430 kde5-14269 kde5-14686 kea ken/TL2024 ken/inkscape-core-mods ken/tuningfonts krejzi/svn lazarus lxqt nosym perl-modules plabs/newcss plabs/python-mods python3.11 qt5new rahul/power-profiles-daemon renodr/vulkan-addition systemd-11177 systemd-13485 trunk upgradedb xry111/intltool xry111/llvm18 xry111/soup3 xry111/test-20220226 xry111/xf86-video-removal
Last change on this file since 5cc1126a was 5cc1126a, checked in by Manuel Canales Esparcia <manuel@…>, 19 years ago

Tagged tcl.xml

git-svn-id: svn://svn.linuxfromscratch.org/BLFS/trunk/BOOK@3991 af4574ff-66df-0310-9fd7-8a98e5e911e0

  • Property mode set to 100644
File size: 6.6 KB
Line 
1<?xml version="1.0" encoding="ISO-8859-1"?>
2<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.4//EN"
3 "http://www.oasis-open.org/docbook/xml/4.4/docbookx.dtd" [
4 <!ENTITY % general-entities SYSTEM "../../general.ent">
5 %general-entities;
6
7 <!ENTITY tcl-download-http "http://prdownloads.sourceforge.net/tcl/tcl&tcl-version;-src.tar.gz">
8 <!ENTITY tcl-download-ftp "ftp://ftp.us.xemacs.org/pub/tcl/tcl8_4/tcl&tcl-version;-src.tar.gz">
9 <!ENTITY tcl-md5sum "7e01b409925e4eb59ad44a4c12b9c681">
10 <!ENTITY tcl-size "3.4 MB">
11 <!ENTITY tcl-buildsize "24.2 MB">
12 <!ENTITY tcl-time "0.28 SBU (additional 0.73 SBU to run the test suite)">
13]>
14
15<sect1 id="tcl" xreflabel="Tcl-&tcl-version;">
16 <?dbhtml filename="tcl.html"?>
17
18 <sect1info>
19 <othername>$LastChangedBy$</othername>
20 <date>$Date$</date>
21 </sect1info>
22
23 <title>Tcl-&tcl-version;</title>
24
25 <indexterm zone="tcl">
26 <primary sortas="a-Tcl">Tcl</primary>
27 </indexterm>
28
29 <sect2 role="package">
30 <title>Introduction to Tcl</title>
31
32 <para>The <application>Tcl</application> package contains the Tool Command
33 Language, a robust general-purpose scripting language.</para>
34
35 <bridgehead renderas="sect3">Package Information</bridgehead>
36 <itemizedlist spacing="compact">
37 <listitem>
38 <para>Download (HTTP): <ulink url="&tcl-download-http;"/></para>
39 </listitem>
40 <listitem>
41 <para>Download (FTP): <ulink url="&tcl-download-ftp;"/></para>
42 </listitem>
43 <listitem>
44 <para>Download MD5 sum: &tcl-md5sum;</para>
45 </listitem>
46 <listitem>
47 <para>Download size: &tcl-size;</para>
48 </listitem>
49 <listitem>
50 <para>Estimated disk space required: &tcl-buildsize;</para>
51 </listitem>
52 <listitem>
53 <para>Estimated build time: &tcl-time;</para>
54 </listitem>
55 </itemizedlist>
56
57 </sect2>
58
59 <sect2 role="installation">
60 <title>Installation of Tcl</title>
61
62 <note>
63 <para>This package is also installed in LFS during
64 the bootstrap phase. The significant difference between the two installations
65 (other than installing to <filename class="directory">/usr</filename>) is that
66 the package is installed in such a way that there is no need to keep the build
67 directory around after installation.</para>
68 </note>
69
70 <para>Install <application>Tcl</application> by running the following
71 commands:</para>
72
73<screen><userinput>export VERSION=&tcl-version; &amp;&amp;
74export V=`echo $VERSION | cut -d "." -f 1,2` &amp;&amp;
75export DIR=$PWD &amp;&amp;
76cd unix &amp;&amp;
77./configure --prefix=/usr --enable-threads &amp;&amp;
78make &amp;&amp;
79sed -i "s:${DIR}/unix:/usr/lib:" tclConfig.sh &amp;&amp;
80sed -i "s:${DIR}:/usr/include/tcl${V}:" tclConfig.sh &amp;&amp;
81sed -i "s,^TCL_LIB_FILE='libtcl${V}..TCL_DBGX..so',\
82TCL_LIB_FILE=\"libtcl${V}\$\{TCL_DBGX\}.so\"," tclConfig.sh</userinput></screen>
83
84 <para>To test the results, issue: <command>make test</command>.</para>
85
86 <para>Now, as the <systemitem class="username">root</systemitem> user:</para>
87
88<screen role="root"><userinput>make install &amp;&amp;
89install -v -d /usr/include/tcl${V}/unix &amp;&amp;
90install -v -m644 *.h /usr/include/tcl${V}/unix/ &amp;&amp;
91install -v -d /usr/include/tcl${V}/generic &amp;&amp;
92install -v -c -m644 ../generic/*.h /usr/include/tcl${V}/generic/ &amp;&amp;
93rm -v -f /usr/include/tcl${V}/generic/{tcl,tclDecls,tclPlatDecls}.h &amp;&amp;
94ln -v -nsf ../../include/tcl${V} /usr/lib/tcl${V}/include &amp;&amp;
95ln -v -sf libtcl${V}.so /usr/lib/libtcl.so &amp;&amp;
96ln -v -sf tclsh${V} /usr/bin/tclsh</userinput></screen>
97
98 <para>Clean up the unprivileged user's environment using the following
99 commands:</para>
100
101<screen><userinput>unset VERSION &amp;&amp;
102unset V &amp;&amp;
103unset DIR</userinput></screen>
104
105<!--
106 <caution>
107 <para>If you build the package as an ordinary user and then switch to
108 root to install the package, ensure you set the environment variables
109 <envar>V</envar> and <envar>VERSION</envar> before running the installation
110 commands.</para>
111 </caution>
112-->
113
114 </sect2>
115
116 <sect2 role="commands">
117 <title>Command Explanations</title>
118
119 <para><parameter>--enable-threads</parameter>: This switch forces the package
120 to build with thread support.</para>
121
122 <para><command>sed -i ...</command>: The <application>Tcl</application>
123 package assumes that the source that is used to build
124 <application>Tcl</application> is always kept around for compiling packages
125 that depend on <application>Tcl</application>. These <command>sed</command>s
126 remove the reference to the build directory and replace them by saner system
127 wide locations.</para>
128
129 <para><command>install ...</command>: These commands install the internal
130 headers into a system-wide location.</para>
131
132 <para><command>ln -v -sf ...</command>: These commands create compatibility
133 symbolic links.</para>
134
135 </sect2>
136
137 <sect2 role="content">
138 <title>Contents</title>
139
140 <segmentedlist>
141 <segtitle>Installed Programs</segtitle>
142 <segtitle>Installed Libraries</segtitle>
143 <segtitle>Installed Directories</segtitle>
144
145 <seglistitem>
146 <seg>tclsh and tclsh8.4</seg>
147 <seg>libtcl.so and libtclstub8.4.a</seg>
148 <seg>/usr/include/tcl8.4 and /usr/lib/tcl8.4</seg>
149 </seglistitem>
150 </segmentedlist>
151
152 <variablelist>
153 <bridgehead renderas="sect3">Short Descriptions</bridgehead>
154 <?dbfo list-presentation="list"?>
155 <?dbhtml list-presentation="table"?>
156
157 <varlistentry id="tclsh">
158 <term><command>tclsh</command></term>
159 <listitem>
160 <para> is a symlink to the <command>tclsh8.4</command>
161 program.</para>
162 <indexterm zone="tcl tclsh">
163 <primary sortas="g-tclsh">tclsh</primary>
164 </indexterm>
165 </listitem>
166 </varlistentry>
167
168 <varlistentry id="tclsh8.4">
169 <term><command>tclsh8.4</command></term>
170 <listitem>
171 <para> is a simple shell containing the
172 <application>Tcl</application> interpreter.</para>
173 <indexterm zone="tcl tclsh8.4">
174 <primary sortas="b-tclsh8.4">tclsh8.4</primary>
175 </indexterm>
176 </listitem>
177 </varlistentry>
178
179 <varlistentry id="libtcl">
180 <term><filename role="library">libtcl.so</filename></term>
181 <listitem>
182 <para>contains the API functions required
183 by <application>Tcl</application>.</para>
184 <indexterm zone="tcl libtcl">
185 <primary sortas="c-libtcl">libtcl.so</primary>
186 </indexterm>
187 </listitem>
188 </varlistentry>
189
190 </variablelist>
191
192 </sect2>
193
194</sect1>
Note: See TracBrowser for help on using the repository browser.