From: Alan W. I. <ir...@be...> - 2003-03-21 19:26:22
|
Steve reported to Rafael who forwarded it here....: The version string "5.2.0.cvs.20030320" causes Tkinter to choke, viz: steve@riemann{steve}python Python 2.2.2 (#1, Jan 18 2003, 10:18:59) [GCC 3.2.2 20030109 (Debian prerelease)] on linux2 Type "help", "copyright", "credits" or "license" for more information. >>> import Tkinter >>> root = Tkinter.Tk() error reading package index file /usr/lib/plplot5.2.0.cvs.20030320/pkgIndex.tcl: expected version number but got "5.2.0.cvs.20030320" I have confirmed the problem. If you follow the cookbook in examples/tk/README.tkdemos the following error shows up with my March 17th version number. wish % lappend auto_path /usr/local/plplot_at/lib/plplot5.2.0.cvs.20030317 /usr/lib/tcl8.3 /usr/lib /usr/lib/tk8.3 /usr/local/plplot_at/lib/plplot5.2.0.cvs.20030317 % package require Pltk error reading package index file /usr/local/plplot_at/lib/plplot5.2.0.cvs.20030317/pkgIndex.tcl: expected version number but got "5.2.0.cvs.20030317" can't find package Pltk That error message is essentially the same that Steve found. The problem here is that we are assuming that the package version and plplot tcl script version should be identical. However, man package says the version used for the tcl package command must be numerical (e.g., 5.2.0) with no alphabetic characters allowed in the version. A change in the major number indicates an incompatibility in the associated tcl scripts, but the rest of the numbers should just be increasing with time with no special signficance attached to them. This is one more version number we must keep track of for PLplot with different requirements to the package version (where we do, in general, want to be able to include alphabetic version information in the string). For now, I have have solved the problem by defining a new symbol PLPLOT_TCL_VERSION=5 in configure.ac which is used to configure the various pkgIndex.tcl files we have (and which are concatanated to form the installed $prefix/lib/plplot5.2.0.cvs.20030317/pkgIndex.tcl. I have tentatively assigned this version to be the same as the major version number of our package (5). This works on my Debian woody machine where I have a local prefix other than /usr. Steve, could you quickly try simply editing /usr/lib/plplot5.2.0.cvs.20030320/pkgIndex.tcl and change *only* the version numbers that occur on the lines starting with package ifneeded .... (The other version numbers must remain identical to what they are now.) Subject to Steve's verification, I believe this fix should stop plplot gratuitously breaking Tkinter for every Debian unstable user (which should subtantially improve our Debian public relations....;-)) **BTW, I am no expert on assigning TCL script version numbers (and don't want to be).** Thus, the tcl experts here should thrash this out and decide on what is best for PLPLOT_TCL_VERSION each time we make a new release of plplot based on the script changes that have been made since the previous release. For example, Maurice, if you want to change PLPLOT_TCL_VERSION to 5.2.0 rather than 5 (presuming no script changes since 5.2.0), that is fine with me. Alan __________________________ Alan W. Irwin email: ir...@be... phone: 250-727-2902 Astronomical research affiliation with Department of Physics and Astronomy, University of Victoria (astrowww.phys.uvic.ca). Programming affiliations with the Canadian Centre for Climate Modelling and Analysis (www.cccma.bc.ec.gc.ca) and the PLplot scientific plotting software package (plplot.org). __________________________ Linux-powered Science __________________________ |