Difference between revisions of "TCL"

From CBLFS
Jump to navigationJump to search
(Multilib)
 
(12 intermediate revisions by 4 users not shown)
Line 2: Line 2:
 
|-valign="top"
 
|-valign="top"
 
!Download Source:
 
!Download Source:
| http://prdownloads.sourceforge.net/tcl/tcl8.4.14-src.tar.gz
+
| http://downloads.sourceforge.net/tcl/tcl{{TCL-Version}}-src.tar.gz
 
|}
 
|}
  
 
----
 
----
  
== Introduction to TCL ==
+
{{Package-Introduction|Tcl (Tool Command Language) is a very powerful but easy to learn dynamic programming language, suitable for a very wide range of uses, including web and desktop applications, networking, administration, testing and many more. Open source and business-friendly, Tcl is a mature yet evolving language that is truly cross platform, easily deployed and highly extensible.|http://www.tcl.tk/}}
 
 
The TCL package contains the Tool Command Language, a robust general-purpose scripting language. It was installed as part of the temporary system in CLFS for use with test suites, but was not reinstalled as part of the permanent system.
 
  
 
== Dependencies ==
 
== Dependencies ==
Line 25: Line 23:
 
  make install &&
 
  make install &&
 
  make install-private-headers &&
 
  make install-private-headers &&
  ln -v -sf tclsh8.4 /usr/bin/tclsh
+
  ln -v -sf tclsh{{TCL-Version2}} /usr/bin/tclsh
 
 
=== Command Explanations ===
 
 
 
--enable-threads: This switch forces the package to build with thread support.
 
 
 
'''make install-private-headers''': This command is used to install the Tcl library interface headers used by other packages if they link to the Tcl library.
 
 
 
'''ln -v -sf tclsh8.4 /usr/bin/tclsh''': This command is used to create a compatibility symbolic link to the tclsh8.4 file as many packages expect a file named tclsh.
 
  
 
== Multilib ==
 
== Multilib ==
Line 49: Line 39:
  
 
  make install &&
 
  make install &&
  mv -v /usr/bin/tclsh8.4{,-32} &&
+
  mv -v /usr/bin/tclsh{{TCL-Version2}}{,-32} &&
  ln -v -sf tclsh8.4-32 /usr/bin/tclsh-32
+
  ln -v -sf tclsh{{TCL-Version2}}-32 /usr/bin/tclsh-32
  
 
=== N32 ===
 
=== N32 ===
Line 57: Line 47:
  
 
  cd unix &&
 
  cd unix &&
 +
sed -i '/sprintf(installLib/s:"lib:&32:' tclUnixInit.c &&
 +
sed -i -e '/TCL_PACKAGE_PATH=/s:=.*:="/usr/lib32":' \
 +
        -e "/^TCL_LIBRARY=/s:=.*:='/usr/lib32/tcl\$(VERSION)':" configure &&
 
  CC="gcc ${BUILDN32}" ./configure --prefix=/usr --libdir=/usr/lib32 \
 
  CC="gcc ${BUILDN32}" ./configure --prefix=/usr --libdir=/usr/lib32 \
 
     --enable-threads &&
 
     --enable-threads &&
Line 64: Line 57:
  
 
  make install &&
 
  make install &&
  mv -v /usr/bin/tclsh8.4{,-n32} &&
+
  mv -v /usr/bin/tclsh{{TCL-Version2}}{,-n32} &&
  ln -v -sf tclsh8.4-n32 /usr/bin/tclsh-n32
+
  ln -v -sf tclsh{{TCL-Version2}}-n32 /usr/bin/tclsh-n32
  
 
=== 64Bit ===
 
=== 64Bit ===
Line 72: Line 65:
  
 
  cd unix &&
 
  cd unix &&
 +
sed -i '/sprintf(installLib/s:"lib:&64:' tclUnixInit.c &&
 +
sed -i -e '/TCL_PACKAGE_PATH=/s:=.*:="/usr/lib64":' \
 +
        -e "/^TCL_LIBRARY=/s:=.*:='/usr/lib64/tcl\$(VERSION)':" configure &&
 
  CC="gcc ${BUILD64}" ./configure --prefix=/usr --libdir=/usr/lib64 \
 
  CC="gcc ${BUILD64}" ./configure --prefix=/usr --libdir=/usr/lib64 \
 
     --enable-threads &&
 
     --enable-threads &&
Line 80: Line 76:
 
  make install &&
 
  make install &&
 
  make install-private-headers &&
 
  make install-private-headers &&
  mv -v /usr/bin/tclsh8.4{,-64} &&
+
  mv -v /usr/bin/tclsh{{TCL-Version2}}{,-64} &&
  ln -v -sf multiarch_wrapper /usr/bin/tclsh8.4 &&
+
  ln -v -sf multiarch_wrapper /usr/bin/tclsh{{TCL-Version2}} &&
  ln -v -sf tclsh8.4-64 /usr/bin/tclsh-64 &&
+
  ln -v -sf tclsh{{TCL-Version2}}-64 /usr/bin/tclsh-64 &&
 
  ln -v -sf multiarch_wrapper /usr/bin/tclsh
 
  ln -v -sf multiarch_wrapper /usr/bin/tclsh
  
Line 90: Line 86:
 
|-valign="top"
 
|-valign="top"
 
! Installed Programs:
 
! Installed Programs:
| tclsh and tclsh8.4
+
| tclsh and tclsh{{TCL-Version2}}
 
|-valign="top"
 
|-valign="top"
 
! Installed Libraries:
 
! Installed Libraries:
| libtcl.so and libtclstub8.4.a
+
| libtcl.so and libtclstub{{TCL-Version2}}.a
 
|-valign="top"
 
|-valign="top"
 
! Installed Directories:
 
! Installed Directories:
| /usr/lib/tcl8.4
+
| /usr/lib/tcl{{TCL-Version2}}
 
|}
 
|}
  
Line 106: Line 102:
 
| is a symlink to the tclsh8.4 program.
 
| is a symlink to the tclsh8.4 program.
 
|-valign="top"
 
|-valign="top"
! tclsh8.4
+
! tclsh{{TCL-Version2}}
 
| is a simple shell containing the Tcl interpreter.
 
| is a simple shell containing the Tcl interpreter.
 
|-valign="top"
 
|-valign="top"
Line 112: Line 108:
 
| contains the API functions required by Tcl.
 
| contains the API functions required by Tcl.
 
|}
 
|}
 +
 +
[[Category:General Libs]]

Latest revision as of 09:32, 20 September 2009

Download Source: http://downloads.sourceforge.net/tcl/tcl8.6.1-src.tar.gz

Introduction to TCL

Tcl (Tool Command Language) is a very powerful but easy to learn dynamic programming language, suitable for a very wide range of uses, including web and desktop applications, networking, administration, testing and many more. Open source and business-friendly, Tcl is a mature yet evolving language that is truly cross platform, easily deployed and highly extensible.

Project Homepage: http://www.tcl.tk/

Dependencies

Non-Multilib

Compile the package:

cd unix &&
./configure --prefix=/usr --enable-threads &&
make

Install the package

make install &&
make install-private-headers &&
ln -v -sf tclsh8.6 /usr/bin/tclsh

Multilib

32Bit

Compile the package:

cd unix &&
CC="gcc ${BUILD32}" ./configure --prefix=/usr \
    --enable-threads &&
make

Install the package

make install &&
mv -v /usr/bin/tclsh8.6{,-32} &&
ln -v -sf tclsh8.6-32 /usr/bin/tclsh-32

N32

Compile the package:

cd unix &&
sed -i '/sprintf(installLib/s:"lib:&32:' tclUnixInit.c &&
sed -i -e '/TCL_PACKAGE_PATH=/s:=.*:="/usr/lib32":' \
       -e "/^TCL_LIBRARY=/s:=.*:='/usr/lib32/tcl\$(VERSION)':" configure &&
CC="gcc ${BUILDN32}" ./configure --prefix=/usr --libdir=/usr/lib32 \
    --enable-threads &&
make

Install the package

make install &&
mv -v /usr/bin/tclsh8.6{,-n32} &&
ln -v -sf tclsh8.6-n32 /usr/bin/tclsh-n32

64Bit

Compile the package:

cd unix &&
sed -i '/sprintf(installLib/s:"lib:&64:' tclUnixInit.c &&
sed -i -e '/TCL_PACKAGE_PATH=/s:=.*:="/usr/lib64":' \
       -e "/^TCL_LIBRARY=/s:=.*:='/usr/lib64/tcl\$(VERSION)':" configure &&
CC="gcc ${BUILD64}" ./configure --prefix=/usr --libdir=/usr/lib64 \
    --enable-threads &&
make

Install the package

make install &&
make install-private-headers &&
mv -v /usr/bin/tclsh8.6{,-64} &&
ln -v -sf multiarch_wrapper /usr/bin/tclsh8.6 &&
ln -v -sf tclsh8.6-64 /usr/bin/tclsh-64 &&
ln -v -sf multiarch_wrapper /usr/bin/tclsh

Contents

Installed Programs: tclsh and tclsh8.6
Installed Libraries: libtcl.so and libtclstub8.6.a
Installed Directories: /usr/lib/tcl8.6

Short Descriptions

tclsh is a symlink to the tclsh8.4 program.
tclsh8.6 is a simple shell containing the Tcl interpreter.
libtcl.so contains the API functions required by Tcl.
Retrieved from "?title=TCL&oldid=19286"