Alan W. Irwin writes: > Hi Geoffrey: > > Your recent revision (I am using revision 10991) to make a plstransform > wrapper to Tcl builds okay, but actual use of plstransform for example 19 > does not work for me. I get > > Unable to evaluate Tcl-side coordinate transform. > > repeated 13557 times in examples/x19t_psc.txt, the file that captures stdout > for the tcl version of example 19. That message is apparently coming > from Tcl_transform defined in bindings/tcl/tclAPI.c. > > I am running the development version of Tcl-8.4 (package tcl8.4-dev version > 8.4.19-2) for Debian Lenny. The relevant lines from cmake output > are > > -- TCL_TCLSH = /usr/bin/tclsh > -- TCL_INCLUDE_PATH = /usr/include/tcl8.4 > -- TCL_LIBRARY = /usr/lib/libtcl8.4.so > > If you try Tcl-8.4 do you get the same error?
Well, so I went to a Fedora 8 system which has Tcl 8.4, and checked out the code there. Won't build because F8 uses cmake 2.4.8. Instead of trying to build a new developer toolchain on that computer, I decided to come back to my Fedora 12 system, where I did the x19 development work, and which uses Tcl/Tk 8.5 as you surmised. And I pulled down Tcl/Tk 8.4.19, built them, installed to a local prefix, and then reran cmake with that prefix/bin dir in my path. cmake found only the Tcl/Tk in /usr/{bin|lib}. So then I make a softlink in my Tcl/Tk 8.4 prefix/bin dir, from tclsh8.4 to tclsh, rm'd everything in my plplot build tree, and reran the cmake. This time I got: % cmake -DCMAKE_INSTALL_PREFIX=$HOME/devel/8.4/prefix .. ... -- Looking for include paths and libraries for Tcl/Tk -- Found Tclsh: /home/furnish/devel/8.4/prefix/bin/tclsh -- Found TCL: /usr/lib64/libtcl.so -- Found TCLTK: /usr/lib64/libtcl.so -- Found TK: /usr/lib64/libtk.so -- Looking for include paths and libraries for Tcl/Tk - found -- Looking for tclsh -- Looking for tclsh - found -- TCL_TCLSH = /home/furnish/devel/8.4/prefix/bin/tclsh -- TCL_INCLUDE_PATH = /home/furnish/devel/8.4/prefix/include -- TCL_LIBRARY = /usr/lib64/libtcl.so So, it found the tclsh in my path, correctly matched the proper Tcl include path, but picked up the Tcl/Tk libs in /usr/lib64, which are the system 8.5 variants. Question: What is the right way to tell PLplot CBS to use the Tcl/Tk in a particular non-default location? Opinion: PLplot should preferentially select components from any supplied prefix, which for our CBS, is apparently specified via -DCMAKE_INSTALL_PREFIX. Anything found there, should supercede any other things which may be lying around on the system. Opinion: Under no circumstances should PLplot CBS miscombine includes and libs for any component, from disparate locations in the filesystem. -Geoff ------------------------------------------------------------------------------ _______________________________________________ Plplot-devel mailing list Plplot-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/plplot-devel