source: general/prog/tcl.xml@ dd14f24

10.0 10.1 11.0 11.1 11.2 11.3 12.0 12.1 12.2 7.10 7.8 7.9 8.0 8.1 8.2 8.3 8.4 9.0 9.1 basic bdubbs/svn elogind gimp3 kea ken/TL2024 ken/inkscape-core-mods ken/tuningfonts lazarus lxqt nosym perl-modules plabs/newcss plabs/python-mods python3.11 qt5new rahul/power-profiles-daemon renodr/vulkan-addition trunk upgradedb xry111/for-12.3 xry111/intltool xry111/llvm18 xry111/soup3 xry111/spidermonkey128 xry111/test-20220226 xry111/xf86-video-removal
Last change on this file since dd14f24 was dd14f24, checked in by Bruce Dubbs <bdubbs@…>, 10 years ago

Update to tcl-8.6.4/tk-8.6.4

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

  • Property mode set to 100644
File size: 8.9 KB
Line 
1<?xml version="1.0" encoding="ISO-8859-1"?>
2<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
3 "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
4 <!ENTITY % general-entities SYSTEM "../../general.ent">
5 %general-entities;
6
7 <!ENTITY tcl-download-http "&sourceforge-repo;/tcl/tcl&tcl-version;-src.tar.gz">
8 <!ENTITY tcl-download-ftp " ">
9 <!ENTITY tcl-md5sum "d7cbb91f1ded1919370a30edd1534304">
10 <!ENTITY tcl-size "8.5 MB">
11 <!ENTITY tcl-buildsize "69 MB (includes documentation installation)(add 10MB for tests)">
12 <!ENTITY tcl-time "0.4 SBU (using parallelism=8, additional 0.5 SBU for the tests)">
13
14 <!ENTITY tcl-doc-download "&sourceforge-repo;/tcl/tcl&tcl-version;-html.tar.gz">
15 <!ENTITY tcl-doc-md5sum "62647d87e9244a4d521c6547e097007c">
16 <!ENTITY tcl-doc-size "1.2 MB">
17
18 <!-- Ensure this is updated when Tcl moves from the 8.6.x branch -->
19 <!ENTITY tcl-ver "8.6">
20 <!ENTITY tdbc-ver "1.0.3">
21 <!ENTITY itcl-ver "4.0.3">
22]>
23
24<sect1 id="tcl" xreflabel="Tcl-&tcl-version;">
25 <?dbhtml filename="tcl.html"?>
26
27 <sect1info>
28 <othername>$LastChangedBy$</othername>
29 <date>$Date$</date>
30 </sect1info>
31
32 <title>Tcl-&tcl-version;</title>
33
34 <indexterm zone="tcl">
35 <primary sortas="a-Tcl">Tcl</primary>
36 </indexterm>
37
38 <sect2 role="package">
39 <title>Introduction to Tcl</title>
40
41 <para>
42 The <application>Tcl</application> package contains the Tool Command
43 Language, a robust general-purpose scripting language.
44 </para>
45
46 &lfs77_checked;
47
48 <bridgehead renderas="sect3">Package Information</bridgehead>
49 <itemizedlist spacing="compact">
50 <listitem>
51 <para>
52 Download (HTTP): <ulink url="&tcl-download-http;"/>
53 </para>
54 </listitem>
55 <listitem>
56 <para>
57 Download (FTP): <ulink url="&tcl-download-ftp;"/>
58 </para>
59 </listitem>
60 <listitem>
61 <para>
62 Download MD5 sum: &tcl-md5sum;
63 </para>
64 </listitem>
65 <listitem>
66 <para>
67 Download size: &tcl-size;
68 </para>
69 </listitem>
70 <listitem>
71 <para>
72 Estimated disk space required: &tcl-buildsize;
73 </para>
74 </listitem>
75 <listitem>
76 <para>
77 Estimated build time: &tcl-time;
78 </para>
79 </listitem>
80 </itemizedlist>
81
82 <bridgehead renderas="sect3">Additional Downloads</bridgehead>
83 <itemizedlist spacing="compact">
84 <title>Optional Documentation</title>
85 <listitem>
86 <para>
87 Download (HTTP): <ulink url="&tcl-doc-download;"/>
88 </para>
89 </listitem>
90 <listitem>
91 <para>
92 Download MD5 sum: &tcl-doc-md5sum;
93 </para>
94 </listitem>
95 <listitem>
96 <para>
97 Download size: &tcl-doc-size;
98 </para>
99 </listitem>
100 </itemizedlist>
101
102 <para condition="html" role="usernotes">User Notes:
103 <ulink url="&blfs-wiki;/tcl"/>
104 </para>
105 </sect2>
106
107 <sect2 role="installation">
108 <title>Installation of Tcl</title>
109
110 <para>
111 This package is also installed in LFS during the bootstrap phase.
112 As it is not installed during Chapter 6 of LFS, installation instructions
113 are included here in BLFS.
114 </para>
115
116 <para>
117 If you downloaded the optional documentation, unpack the tarball
118 by issuing the following command:
119 </para>
120
121<screen><userinput>tar -xf ../tcl&tcl-version;-html.tar.gz --strip-components=1</userinput></screen>
122
123 <para>
124 Install <application>Tcl</application> by running the following
125 commands:
126 </para>
127
128<screen><userinput>export SRCDIR=`pwd` &amp;&amp;
129
130cd unix &amp;&amp;
131
132./configure --prefix=/usr \
133 --without-tzdata \
134 --mandir=/usr/share/man \
135 $([ $(uname -m) = x86_64 ] &amp;&amp; echo --enable-64bit) &amp;&amp;
136make &amp;&amp;
137
138sed -e "s#$SRCDIR/unix#/usr/lib#" \
139 -e "s#$SRCDIR#/usr/include#" \
140 -i tclConfig.sh &amp;&amp;
141
142sed -e "s#$SRCDIR/unix/pkgs/tdbc&tdbc-ver;#/usr/lib/tdbc1.0.2#" \
143 -e "s#$SRCDIR/pkgs/tdbc&tdbc-ver;/generic#/usr/include#" \
144 -e "s#$SRCDIR/pkgs/tdbc&tdbc-ver;/library#/usr/lib/tcl8.6#" \
145 -e "s#$SRCDIR/pkgs/&tdbc-ver;#/usr/include#" \
146 -i pkgs/tdbc&tdbc-ver;/tdbcConfig.sh &amp;&amp;
147
148sed -e "s#$SRCDIR/unix/pkgs/itcl&itcl-ver;#/usr/lib/itcl&itcl-ver;#" \
149 -e "s#$SRCDIR/pkgs/itcl&itcl-ver;/generic#/usr/include#" \
150 -e "s#$SRCDIR/pkgs/itcl&itcl-ver;#/usr/include#" \
151 -i pkgs/itcl&itcl-ver;/itclConfig.sh &amp;&amp;
152
153unset SRCDIR</userinput></screen>
154
155
156 <para>
157 To test the results, issue: <command>make test</command>.
158 </para>
159
160 <para>
161 Now, as the <systemitem class="username">root</systemitem> user:
162 </para>
163
164<screen role="root"><userinput>make install &amp;&amp;
165make install-private-headers &amp;&amp;
166ln -v -sf tclsh&tcl-ver; /usr/bin/tclsh &amp;&amp;
167chmod -v 755 /usr/lib/libtcl&tcl-ver;.so</userinput></screen>
168
169 <para>
170 If you downloaded the optional documentation, install it by issuing
171 the following commands as the
172 <systemitem class="username">root</systemitem> user:
173 </para>
174
175<screen role="root"><userinput>mkdir -v -p /usr/share/doc/tcl-&tcl-version; &amp;&amp;
176cp -v -r ../html/* /usr/share/doc/tcl-&tcl-version;</userinput></screen>
177
178 </sect2>
179
180 <sect2 role="commands">
181 <title>Command Explanations</title>
182
183 <para>
184 <option>--without-tzdata</option>: This switch prevents installation
185 of the shipped timezone data which are older than the ones provided
186 in LFS.
187 </para>
188
189 <para>
190 <parameter>$([ $(uname -m) = x86_64 ] &amp;&amp; echo
191 --enable-64bit)</parameter>: This switch is used to enable 64 bit
192 support in <application>Tcl</application> on 64 bit operating
193 systems.
194 </para>
195
196 <para>
197 <command>make install-private-headers</command>: This command is
198 used to install the <application>Tcl</application> library interface
199 headers used by other packages if they link to the
200 <application>Tcl</application> library.
201 </para>
202
203 <para>
204 <command>ln -v -sf tclsh&tcl-ver; /usr/bin/tclsh</command>: This
205 command is used to create a compatibility symbolic link to the
206 <command>tclsh&tcl-ver;</command> file as many packages expect a file
207 named <command>tclsh</command>.
208 </para>
209
210 <para>
211 <command>sed -e ...</command>: The <application>Tcl</application> package
212 expects that its source tree is preserved so that packages depending on
213 it for their compilation can utilize it. These <command>sed</command>
214 remove the references to the build directory and replace them with saner
215 system-wide locations.
216 </para>
217
218 </sect2>
219
220 <sect2 role="content">
221 <title>Contents</title>
222
223 <segmentedlist>
224 <segtitle>Installed Programs</segtitle>
225 <segtitle>Installed Libraries</segtitle>
226 <segtitle>Installed Directories</segtitle>
227
228 <seglistitem>
229 <seg>
230 tclsh and tclsh&tcl-ver;
231 </seg>
232 <seg>
233 libtcl&tcl-ver;.so and libtclstub&tcl-ver;.a
234 </seg>
235 <seg>
236 /usr/lib/itcl4.0.1,
237 /usr/lib/sqlite3.8.6
238 /usr/lib/tcl8,
239 /usr/lib/tcl&tcl-ver;,
240 /usr/lib/tdbc1.0.1,
241 /usr/lib/tdbcmysql1.0.1,
242 /usr/lib/tdbcodbc1.0.1,
243 /usr/lib/tdbcpostgres1.0.1,
244 /usr/lib/thread2.7.1,
245 /usr/share/doc/tcl-&tcl-version;, and
246 /usr/share/man/mann
247 </seg>
248 </seglistitem>
249 </segmentedlist>
250
251 <variablelist>
252 <bridgehead renderas="sect3">Short Descriptions</bridgehead>
253 <?dbfo list-presentation="list"?>
254 <?dbhtml list-presentation="table"?>
255
256 <varlistentry id="tclsh">
257 <term><command>tclsh</command></term>
258 <listitem>
259 <para>
260 is a symlink to the <command>tclsh&tcl-ver;</command> program.
261 </para>
262 <indexterm zone="tcl tclsh">
263 <primary sortas="b-tclsh">tclsh</primary>
264 </indexterm>
265 </listitem>
266 </varlistentry>
267
268 <varlistentry id="tclsh-eight">
269 <term><command>tclsh&tcl-ver;</command></term>
270 <listitem>
271 <para>
272 is a simple shell containing the
273 <application>Tcl</application> interpreter.
274 </para>
275 <indexterm zone="tcl tclsh-eight">
276 <primary sortas="b-tclsh&tcl-ver;">tclsh&tcl-ver;</primary>
277 </indexterm>
278 </listitem>
279 </varlistentry>
280
281 <varlistentry id="libtcl">
282 <term><filename class="libraryfile">libtcl&tcl-ver;.so</filename></term>
283 <listitem>
284 <para>
285 contains the API functions required by
286 <application>Tcl</application>.
287 </para>
288 <indexterm zone="tcl libtcl">
289 <primary sortas="c-libtcl">libtcl&tcl-ver;.so</primary>
290 </indexterm>
291 </listitem>
292 </varlistentry>
293
294 </variablelist>
295
296 </sect2>
297
298</sect1>
Note: See TracBrowser for help on using the repository browser.