Tcl/Tk
Basic Tcl/Tk must be installed to satisfy CODA references. Following packages were downloaded to /usr/local/downloads from the web:
tcl8.4.13 tk8.4.13 tix-8.4.0 expect-5.43 blt2.4z itcl itk <<< DO NOT DO IT !!! tcl-dp >>> <<< DO NOT DO IT !!! tcl-debug >>> mysqltcl
Installation instructions:
- tcl
cd /usr/local/src/tcl8.4.13/unix ./configure --prefix=/usr --enable-shared gmake gmake install
- tk
cd /usr/local/src/tk8.4.13/unix ./configure --prefix=/usr --enable-shared gmake gmake install
- tix
cd /usr/local/src/tix-8.4.0
In file Makefile.in:
1. Replace 'pkglibdir' by 'libdir' in 4 places in following fragment:
install-lib-binaries: @mkdir -p $(DESTDIR)$(pkglibdir) @list='$(lib_BINARIES)'; for p in $$list; do \ if test -f $$p; then \ echo " $(INSTALL_PROGRAM) $$p $(DESTDIR)$(libdir)/$$p"; \ $(INSTALL_PROGRAM) $$p $(DESTDIR)$(libdir)/$$p; \ echo " $(RANLIB) $(DESTDIR)$(libdir)/$$p"; \ $(RANLIB) $(DESTDIR)$(libdir)/$$p; \ ....................................
to enforce libTix8.4.so installation into ${exec_prefix}/lib/, not into ${exec_prefix}/lib/Tix8.4/
2. Add following fragment to enforce 'tixwish' building:
WISH_OBJS = tixAppInit.o tixwish: $(WISH_OBJS) $(PKG_LIB_FILE) ${CC} ${CFLAGS} ${LDFLAGS} $(WISH_OBJS) -L./ -lTix8.4 -ltk8.4 -ltcl8.4 \ $(CC_SEARCH_FLAGS) -o tixwish
3. Add 'tixwish' target to the following line:
binaries: $(BINARIES) pkgIndex.tcl tixwish
4. Add 'tixwish' line in following fragment:
install-binaries: binaries install-lib-binaries install-bin-binaries @mkdir -p $(DESTDIR)$(pkglibdir) $(INSTALL_DATA) pkgIndex.tcl $(DESTDIR)$(pkglibdir) $(INSTALL_PROGRAM) tixwish $(DESTDIR)$(bindir) ...........................................
./configure --prefix=/usr --enable-shared gmake gmake install cp demos/bitmaps/about.xpm /usr/lib/Tix8.4/bitmaps/
- expect
cd /usr/local/src/expect-5.43 ./configure --prefix=/usr --with-tcl=/usr/lib --with-tclinclude=/usr/local/src/tcl8.4.13/generic --enable-shared gmake gmake install
- blt
cd /usr/local/src/blt2.4z ./configure \--with-tcl=/usr/local/src/tcl8.4.13/unix \ --with-tk=/usr/local/src/tk8.4.13/unix \ --with-tclincls=/usr/local/src/tcl8.4.13/generic \ --with-tkincls=/usr/local/src/tk8.4.13/generic \ --prefix=/usr gmake gmake install
- symbolic links
cd /usr/bin ln -s wish8.4 wish
- itcl
cd /usr/local/src/itcl3.3 ./configure --with-tcl=/usr/local/src/tcl8.4.13/unix --prefix=/usr gmake gmake install #test clon10:itcl3.3> /usr/bin/tclsh8.4 % package require Itcl 3.3 % exit
- itk
cd /usr/local/src/itk3.3 ./configure --with-tcl=/usr/local/src/tcl8.4.13/unix \ --with-tk=/usr/local/src/tk8.4.13/unix \ --with-itcl=/usr/local/src/itcl3.3 \ --prefix=/usr gmake gmake install #test clon10:src> /usr/bin/tclsh8.4 % package require Itk 3.3 % exit
<<< DO NOT DO IT !!! * tcl-dp
cd /usr/local/src/tcl-dp.4.0.b2/unix ./configure --with-tcl=/usr/local/src/tcl8.4.13/unix --prefix=/usr in generic/dpInit.c: /*sergey if (TclHasSockets(interp) != TCL_OK) { return TCL_ERROR; } */ gmake ###gmake tests cd .. /usr/bin/wish teki.tcl ###'File | Install'. Select dp.tek, click 'Open', select 'Custom', choose 'Solaris' (or whatever), root directory for code files '/usr/lib/tcl8.4' cd /usr/lib/tcl8.4/dp4.0/library/ chmod 755 * All DP scripts should have "package require dp" as their first line which will automatically load the DP module if it has not been loaded already. #test /usr/bin/tclsh8.4 % package require dp 4.0 % exit
<<< DO NOT DO IT !!! * tcl-debug
cd /usr/local/src/tcl-debug-2.0 ./configure --prefix=/usr --enable-shared --with-tcl=/usr/local/src/tcl8.4.13/unix gmake gmake install
- mysqltcl
cd /usr/local/src/mysqltcl-3.05 ./configure --with-tcl=/usr/local/src/tcl8.4.13/unix \ --with-tclinclude=/usr/local/src/tcl8.4.13/generic \ --with-mysql-include=/usr/include/mysql \ --with-mysql-lib=/usr/lib/mysql \ --prefix=/usr gmake gmake install #test clon10> /usr/bin/tclsh8.4 % package require mysqltcl 3.05 % exit
When everything is compiled on one machine of particular flavor, run following commands on other machines of the same flavor:
cd /usr/local/src/tcl8.4.13/unix gmake install cd /usr/local/src/tk8.4.13/unix gmake install cd /usr/local/src/tix-8.4.0 gmake install cp demos/bitmaps/about.xpm /usr/lib/Tix8.4/bitmaps/ cd /usr/local/src/expect-5.43 gmake install cd /usr/local/src/blt2.4z gmake install cd /usr/local/src/itcl3.3 gmake install cd /usr/local/src/itk3.3 gmake install cd /usr/local/src/mysqltcl-3.05 gmake install cd /usr/bin ln -s wish8.4 wish
RHEL5
Install following using yum:
yum install tcl-devel tk-devel tix tix-devel expect expect-devel
Install the rest from local sources:
cd /usr/local/src/tix-8.4.0 cp demos/bitmaps/about.xpm /usr/lib/Tix8.4/bitmaps/ cp tixwish /usr/bin
cd /usr/local/src/blt2.4z gmake install ./configure --prefix=/usr gmake
cd /usr/local/src/itcl3.3 gmake install ./configure --prefix=/usr gmake
cd /usr/local/src/itk3.3 gmake install ./configure --prefix=/usr gmake
cd /usr/local/src/mysqltcl-3.05 gmake install ./configure --prefix=/usr gmake