Hi everybody: I am changing the subject line as appropriate to the new direction I am taking this thread.
On 2008-12-11 13:42-0000 Andrew Ross wrote: > I've also tried on a very old 32-bit debian system with tk 8.4.9 and > there everything works fine with no segmentation faults, so either it is > a change in more recent version of tcl/tk or it is a 32/64 bit issue. That's an interesting result. There are a lot of possible explanations, but one of them is our code is just not compatible (yet) with Tcl/Tk 8.5. To test that hypothesis I built PLplot against Tcl/Tk 8.4. I have both 8.4 (with itcl/itk) and 8.5 (without itcl/itk) development packages installed on my machine. By default our build system picks the latest (which is what you would normally want). Here is how I got around that default behaviour. As root: /usr/sbin/update-alternatives --config tclsh Choose the 8.4 version. (I assume this Debian technique will also work on Ubuntu, but I am not sure.) As an ordinary user, specify the following cmake options -DTCL_INCLUDE_PATH:PATH=/usr/include/tcl8.4 -DTCL_LIBRARY:FILEPATH=/usr/lib/libtcl8.4.so -DTK_INCLUDE_PATH:PATH=/usr/include/tcl8.4 -DTK_LIBRARY:FILEPATH=/usr/lib/libtk8.4.so These are the Debian locations for these headers and libraries so adjust for whatever is appropriate for your distro. After that follow the ordinary build and install. For Tcl/Tk 8.4 (+ itcl/itk) I noticed quite a change in the segfault behaviour. All interactive Tk plots in plplot-test-interactive.sh proceed, but there are uniformly segfaults upon exit for all of them. Recall that for 8.5 I only sometimes got the segfault on exit, and I also got a segfault when I executed "source tkdemos.tcl" under plserver. That latter segfault is now gone (which allows me to see all the standard Tk examples except for the ones mentioned in the changed commentary in plplot-test-interactive.sh (revision 9094). I think that is an important improvement. Since I get the segfaults on exit for the svn trunk version of PLplot for both 8.4 (with itcl/itk) and 8.5 (without itcl/itk), I suspect that issue is due to something in our own code. The additional 8.5 segfault problem (segfault when you run "source tkdemos.tcl under plserver) may also be due to incompatibilities between our code and Tcl/Tk 8.5, but that segfault is only worth investigating if the exit segfaults are fixed first. We have other long-standing Tk problems as well (see comments in plplot-test-interactive.sh, and also notice some of the incorrect colours you get for plplot-test-interactive.sh). However, these segfaults are an especially severe example of the poor state of Tk PLplot maintenance these days. We have lots of languages that are nicely maintained so this Tcl/Tk maintenance issue probably reflects the decreasing popularity of Tcl/Tk as a language. I know the PLplot developers I have CC'd here still have some interest in Tcl/Tk and PLplot, but I completely understand if none of you want to take responsibility for the Tcl/Tk maintenance due to lack of time or interest. Certainly, in my own case I have no interest in Tcl/Tk, and don't have the ability to do anything deep with it. The work I have done on it is simply low-level maintenance done as a matter of pride to help keep it going as long as possible, and I am certainly not equipped to deal with the segfaults or the other issues I have mentioned here. In the event that nobody steps forward as the Tcl/Tk PLplot maintainer, I am strongly leaning toward the idea of simply disabling Tcl/Tk by default for the release as a sign of the lack of maintainer for that component of PLplot. This course of action also avoids segfaults in what our build system enables by default, and also helps new users focus on our well-supported languages. If anybody here strongly objects to disabling Tcl and Tk by default in our build system (i.e., you would have to specifically set -DENABLE_tcl=ON and -DENABLE_tk=ON to get access to Tcl/Tk from now on), please let me know soon since I am going to have to make the decision before our Sunday release. Alan __________________________ Alan W. Irwin Astronomical research affiliation with Department of Physics and Astronomy, University of Victoria (astrowww.phys.uvic.ca). Programming affiliations with the FreeEOS equation-of-state implementation for stellar interiors (freeeos.sf.net); PLplot scientific plotting software package (plplot.org); the libLASi project (unifont.org/lasi); the Loads of Linux Links project (loll.sf.net); and the Linux Brochure Project (lbproject.sf.net). __________________________ Linux-powered Science __________________________ ------------------------------------------------------------------------------ SF.Net email is Sponsored by MIX09, March 18-20, 2009 in Las Vegas, Nevada. The future of the web can't happen without you. Join us at MIX09 to help pave the way to the Next Web now. Learn more and register at http://ad.doubleclick.net/clk;208669438;13503038;i?http://2009.visitmix.com/ _______________________________________________ Plplot-devel mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/plplot-devel
