Sometimes, building Tclkit in the default genkit way does not work, because of things like X11 linkage not working as expected.
There is another way to build, which links Tk and Itcl in statically, instead of as extensions loaded from VFS. The main drawbacks are:
Still, static builds were used for tclkit in the past, and they may just be one notch simpler and hence succeed where the default genkit does not.
Below is a transcript of a complete static build (in this case Alpha Tru64 4.0). Be sure to get a recent genkit, it has some tweaks to get incrtcl right. With thanks to Detlef Groth for persevering and sharing the experience:
src> mkdir tclkit-8.4.2-gcc3
src> cd tclkit-8.4.2-gcc3
tclkit-8.4.2-gcc3> wget https://www.equi4.com/pub/tk/tars/genkit
--11:36:35-- https://www.equi4.com/pub/tk/tars/genkit
=> `genkit'
Connecting to www.equi4.com:80... connected!
HTTP request sent, awaiting response... 200 OK
Length: 23,287 [text/plain]
0K -> .......... .......... .. [100%]
11:36:36 (37.04 KB/s) - `genkit' saved [23287/23287]
tclkit-8.4.2-gcc3> tclsh8.4 genkit A
fetching tars/tcl.tar.gz ... ok
unpacking tars/tcl.tar.gz
fetching tars/tk.tar.gz ... ok
unpacking tars/tk.tar.gz
fetching tars/itcl.tar.gz ... ok
unpacking tars/itcl.tar.gz
fetching tars/mk.tar.gz ... ok
unpacking tars/mk.tar.gz
fetching tars/vfs.tar.gz ... ok
unpacking tars/vfs.tar.gz
fetching tars/kit.tar.gz ... ok
unpacking tars/kit.tar.gz
fetching tars/zlib.tar.gz ... ok
unpacking tars/zlib.tar.gz
tclkit-8.4.2-gcc3> tclsh8.4 genkit B tcl
tcl:
sh ../../../src/tcl/unix/confi... ok
make binaries LD_SEARCH_FLAGS=... ok
make install-binaries install-... ok
/amd/schnuppi/3/project/amphio... ok
Done.
tclkit-8.4.2-gcc3> tclsh8.4 genkit B zlib vfs mk itcl tk kit
zlib:
sh /amd/schnuppi/3/project/amp... ok
make libz.a ... ok
vfs:
sh ../../../src/vfs/configure ... ok
make binaries ... ok
mk:
sh ../../../src/mk/unix/config... ok
make libmk4tcl.la ... ok
itcl:
sh ../../../src/itcl/itcl/conf... ok
make binaries ITCL_LIBRARY= ... ok
tk:
sh ../../../src/tk/unix/config... ok
make binaries LD_SEARCH_FLAGS=... ok
kit:
gcc -c -I. -I/amd/schnuppi/3/p... ok
g++ -o kit pwb.o kitInit.o zli... ok
strip kit ... ok
ls -l /amd/schnuppi/3/project/... ok
Done.
tclkit-8.4.2-gcc3> cd tars
tclkit-8.4.2-gcc3/tars> wget https://www.equi4.com/pub/tk/tars/runtime.kit
--12:07:25-- https://www.equi4.com/pub/tk/tars/runtime.kit
=> `runtime.kit'
Connecting to www.equi4.com:80... connected!
HTTP request sent, awaiting response... 200 OK
Length: 245,528 [application/octet-stream]
0K -> .......... .......... .......... .......... .......... [ 20%]
50K -> .......... .......... .......... .......... .......... [ 41%]
100K -> .......... .......... .......... .......... .......... [ 62%]
150K -> .......... .......... .......... .......... .......... [ 83%]
200K -> .......... .......... .......... ......... [100%]
12:07:28 (136.39 KB/s) - `runtime.kit' saved [245528/245528]
tclkit-8.4.2-gcc3/tars> cd ..
tclkit-8.4.2-gcc3> cat install/`hostname`/kit tars/runtime.kit > mytclkit
tclkit-8.4.2-gcc3> chmod 755 mytclkit
tclkit-8.4.2-gcc3> ./mytclkit
% package require Itcl
3.3
% package require Tk
8.4
% exit
tclkit-8.4.2-gcc3>