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