source: general/prog/tcl.xml@ 13e5884

10.0 10.1 11.0 11.1 7.10 7.8 7.9 8.0 8.1 8.2 8.3 8.4 9.0 9.1 basic bdubbs/svn elogind lazarus nosym perl-modules qt5new trunk upgradedb xry111/intltool xry111/test-20220226
Last change on this file since 13e5884 was 13e5884, checked in by Bruce Dubbs <bdubbs@…>, 7 years ago

Correct tcl sed.
Update to mc-4.8.14.
Mark cheese checked.
Add version to /etc/lsb_release.

git-svn-id: svn://svn.linuxfromscratch.org/BLFS/trunk/BOOK@15739 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 --mandir=/usr/share/man \
134 $([ $(uname -m) = x86_64 ] &amp;&amp; echo --enable-64bit) &amp;&amp;
135make &amp;&amp;
136
137sed -e "s#$SRCDIR/unix#/usr/lib#" \
138 -e "s#$SRCDIR#/usr/include#" \
139 -i tclConfig.sh &amp;&amp;
140
141sed -e "s#$SRCDIR/unix/pkgs/tdbc&tdbc-ver;#/usr/lib/tdbc&tdbc-ver;#" \
142 -e "s#$SRCDIR/pkgs/tdbc&tdbc-ver;/generic#/usr/include#" \
143 -e "s#$SRCDIR/pkgs/tdbc&tdbc-ver;/library#/usr/lib/tcl8.6#" \
144 -e "s#$SRCDIR/pkgs/tdbc&tdbc-ver;#/usr/include#" \
145 -i pkgs/tdbc&tdbc-ver;/tdbcConfig.sh &amp;&amp;
146
147sed -e "s#$SRCDIR/unix/pkgs/itcl&itcl-ver;#/usr/lib/itcl&itcl-ver;#" \
148 -e "s#$SRCDIR/pkgs/itcl&itcl-ver;/generic#/usr/include#" \
149 -e "s#$SRCDIR/pkgs/itcl&itcl-ver;#/usr/include#" \
150 -i pkgs/itcl&itcl-ver;/itclConfig.sh &amp;&amp;
151
152unset SRCDIR</userinput></screen>
153
154
155 <para>
156 To test the results, issue: <command>make test</command>.
157 </para>
158
159 <para>
160 Now, as the <systemitem class="username">root</systemitem> user:
161 </para>
162
163<screen role="root"><userinput>make install &amp;&amp;
164make install-private-headers &amp;&amp;
165ln -v -sf tclsh&tcl-ver; /usr/bin/tclsh &amp;&amp;
166chmod -v 755 /usr/lib/libtcl&tcl-ver;.so</userinput></screen>
167
168 <para>
169 If you downloaded the optional documentation, install it by issuing
170 the following commands as the
171 <systemitem class="username">root</systemitem> user:
172 </para>
173
174<screen role="root"><userinput>mkdir -v -p /usr/share/doc/tcl-&tcl-version; &amp;&amp;
175cp -v -r ../html/* /usr/share/doc/tcl-&tcl-version;</userinput></screen>
176
177 </sect2>
178
179 <sect2 role="commands">
180 <title>Command Explanations</title>
181
182 <para>
183 <option>--without-tzdata</option>: This switch prevents installation
184 of the shipped timezone data which are older than the ones provided
185 in LFS.
186 </para>
187
188 <para>
189 <parameter>$([ $(uname -m) = x86_64 ] &amp;&amp; echo
190 --enable-64bit)</parameter>: This switch is used to enable 64 bit
191 support in <application>Tcl</application> on 64 bit operating
192 systems.
193 </para>
194
195 <para>
196 <command>make install-private-headers</command>: This command is
197 used to install the <application>Tcl</application> library interface
198 headers used by other packages if they link to the
199 <application>Tcl</application> library.
200 </para>
201
202 <para>
203 <command>ln -v -sf tclsh&tcl-ver; /usr/bin/tclsh</command>: This
204 command is used to create a compatibility symbolic link to the
205 <command>tclsh&tcl-ver;</command> file as many packages expect a file
206 named <command>tclsh</command>.
207 </para>
208
209 <para>
210 <command>sed -e ...</command>: The <application>Tcl</application> package
211 expects that its source tree is preserved so that packages depending on
212 it for their compilation can utilize it. These <command>sed</command>
213 remove the references to the build directory and replace them with saner
214 system-wide locations.
215 </para>
216
217 </sect2>
218
219 <sect2 role="content">
220 <title>Contents</title>
221
222 <segmentedlist>
223 <segtitle>Installed Programs</segtitle>
224 <segtitle>Installed Libraries</segtitle>
225 <segtitle>Installed Directories</segtitle>
226
227 <seglistitem>
228 <seg>
229 tclsh and tclsh&tcl-ver;
230 </seg>
231 <seg>
232 libtcl&tcl-ver;.so and libtclstub&tcl-ver;.a
233 </seg>
234 <seg>
235 /usr/lib/itcl4.0.1,
236 /usr/lib/sqlite3.8.6
237 /usr/lib/tcl8,
238 /usr/lib/tcl&tcl-ver;,
239 /usr/lib/tdbc1.0.1,
240 /usr/lib/tdbcmysql1.0.1,
241 /usr/lib/tdbcodbc1.0.1,
242 /usr/lib/tdbcpostgres1.0.1,
243 /usr/lib/thread2.7.1,
244 /usr/share/doc/tcl-&tcl-version;, and
245 /usr/share/man/mann
246 </seg>
247 </seglistitem>
248 </segmentedlist>
249
250 <variablelist>
251 <bridgehead renderas="sect3">Short Descriptions</bridgehead>
252 <?dbfo list-presentation="list"?>
253 <?dbhtml list-presentation="table"?>
254
255 <varlistentry id="tclsh">
256 <term><command>tclsh</command></term>
257 <listitem>
258 <para>
259 is a symlink to the <command>tclsh&tcl-ver;</command> program.
260 </para>
261 <indexterm zone="tcl tclsh">
262 <primary sortas="b-tclsh">tclsh</primary>
263 </indexterm>
264 </listitem>
265 </varlistentry>
266
267 <varlistentry id="tclsh-eight">
268 <term><command>tclsh&tcl-ver;</command></term>
269 <listitem>
270 <para>
271 is a simple shell containing the
272 <application>Tcl</application> interpreter.
273 </para>
274 <indexterm zone="tcl tclsh-eight">
275 <primary sortas="b-tclsh&tcl-ver;">tclsh&tcl-ver;</primary>
276 </indexterm>
277 </listitem>
278 </varlistentry>
279
280 <varlistentry id="libtcl">
281 <term><filename class="libraryfile">libtcl&tcl-ver;.so</filename></term>
282 <listitem>
283 <para>
284 contains the API functions required by
285 <application>Tcl</application>.
286 </para>
287 <indexterm zone="tcl libtcl">
288 <primary sortas="c-libtcl">libtcl&tcl-ver;.so</primary>
289 </indexterm>
290 </listitem>
291 </varlistentry>
292
293 </variablelist>
294
295 </sect2>
296
297</sect1>
Note: See TracBrowser for help on using the repository browser.