|
From: Joe E. <jen...@fl...> - 2004-10-27 21:35:11
|
Techentin, Robert W. wrote: > I tried to compile tile with --with-tcl and --with-tk pointing to the > ActiveTcl installation, and it didn't work because tkInt.h just isn't there. An alternate approach: compile with "-DNO_PRIVATE_HEADERS" and link against libtk8.4.so (as well as libtkstub8.4.a). The build system in the "generic" subdirectory does this by default, or just hack the Makefile by hand. This _might_ not work on HP-UX, since dynamic linking reportedly works differently there, but it's worked for me on all the platforms I've tried. > No problem, because I can download and build Tcl, Tk, and Tile all in > parallel, just like you're supposed to do. But once I've created the > tile0.5 library and added it to my auto_path, I cannot use it from > ActiveTcl. It complains that it can't find a usable tile.tcl, starting in > ActiveTcl's lib directory, and then moving on to /usr/lib and /lib. It > appears that tile0.5 wants to be in the same library directory as tcl8.4 and > tk8.4. This is bug #695441 "tcl_findLibrary does not look in $::auto_path". Probably the best way to fix it is to hack pkgIndex.tcl to set $::tile_library before loading the extension: |package ifneeded tile 0.5 \ | "set ::tile_library $dir ; load [file join $dir tile[info sharedlibext]]]" I might just set things up to always do this (OTOH, that'll break other stuff, so maybe not...) Alternately, you can set the environment variable $TILE_LIBRARY to point to the install directory. --Joe English jen...@fl... |