From: Alan W. I. <ir...@be...> - 2000-12-29 03:03:15
|
In the last couple of weeks I have completed 3 important changes to plplot that will affect all users using the current cvs HEAD. (1) Because of name clash concerns the header naming style has now been changed to the same style used by X. The installed headers now are in their own subdirectory called plplot: irwin@starling> ls -l /usr/local/plplot/include/plplot total 184 -rw-rw-r-- 1 software software 10372 Dec 27 17:39 drivers.h -rw-rw-r-- 1 software software 4132 Dec 27 17:39 pdf.h -rw-rw-r-- 1 software software 3157 Dec 27 17:39 plConfig.h -rw-rw-r-- 1 software software 1771 Dec 27 17:39 plDevs.h -rw-rw-r-- 1 software software 1382 Dec 27 17:39 plcdemos.h -rw-rw-r-- 1 software software 2567 Dec 27 17:39 pldebug.h -rw-rw-r-- 1 software software 7321 Dec 27 17:39 plevent.h -rw-rw-r-- 1 software software 46264 Dec 27 17:39 plplot.h -rw-rw-r-- 1 software software 17170 Dec 27 17:39 plplotP.h -rw-rw-r-- 1 software software 22275 Dec 27 17:39 plstream.h -rw-rw-r-- 1 software software 20290 Dec 27 17:39 plstrm.h -rw-rw-r-- 1 software software 2052 Dec 27 17:39 pltcl.h -rw-rw-r-- 1 software software 979 Dec 27 17:39 pltk.h -rw-rw-r-- 1 software software 5115 Dec 27 17:39 plxwd.h -rw-rw-r-- 1 software software 11945 Dec 27 17:39 tclMatrix.h When compiling, the -I directory should remain the same (pointing to $prefix/include), but your source code should change all occurrences of #include "*.h" --> #include "plplot/*.h" where * is any of the PLplot header file names (without .h suffix) above. This massive source code change has now been completed for all plplot routines and header files. (2) The double-precision fortran examples work for the first time with Linux. The way this was done was to abandon the old method of changing the fortran precision (the -r8 compiler option) which did not work for all compilers including g77. The new method uses m4 to create the fortran example source (suffix of .f) from m4 source (suffix of .fm4), and should work for all operating systems where m4 is available. (And that should mean most of them since m4 is part of the GNU tools which can be downloaded and installed on most systems.) (3) The libraries have been renamed in a consistent fashion. The complicated library name tagging system that was dependent on configure options has largely been dropped. The only part of this that is left is the "d" suffix on core library names if double precision was configured. (The matrix library is an exception; no suffix is used in that case since the library is single precision in all cases.) For Linux, all shared libraries now have a 3-part version number, and the standard symbolic links (linker name, and soname) are also created. To help users get the library and other linker options correct, I have made a script that echos the linker options used when linking plrender. For example, on my Linux system with double-precision configured here is the result of running the script. irwin@starling> /usr/local/plplot/bin/plplot_linkage -L/usr/local/plplot/lib -lplplotd -lplmat -litk3.1 -ltk8.2 -litcl3.1 -ltcl8.2 -L/usr/X11R6/lib -lX11 -lvga -ldl -lm -lg2c -Wl,-rpath -Wl,/usr/local/plplot/lib Results of this script on your system will vary of course depending on what versions of all system libraries that you have and your configuration options. Here is a list of the current plplot libraries: ls -l /usr/local/plplot/lib/ |grep -v '\.map' |grep -v '\.fnt' total 1288 -rw-rw-r-- 1 software software 34310 Dec 27 17:39 libplcxxd.a lrwxrwxrwx 1 software software 14 Dec 27 17:39 libplcxxd.so -> libplcxxd.so.5* lrwxrwxrwx 1 software software 20 Dec 27 17:39 libplcxxd.so.5 -> ./libplcxxd.so.5.0.1* -rwxrwxr-x 1 software software 89968 Dec 27 17:37 libplcxxd.so.5.0.1* -rw-rw-r-- 1 software software 11762 Dec 27 17:39 libplmat.a lrwxrwxrwx 1 software software 13 Dec 27 17:39 libplmat.so -> libplmat.so.5* lrwxrwxrwx 1 software software 19 Dec 27 17:39 libplmat.so.5 -> ./libplmat.so.5.0.1* -rwxrwxr-x 1 software software 16565 Dec 27 17:37 libplmat.so.5.0.1* -rw-rw-r-- 1 software software 459048 Dec 27 17:39 libplplotd.a lrwxrwxrwx 1 software software 15 Dec 27 17:39 libplplotd.so -> libplplotd.so.5* lrwxrwxrwx 1 software software 21 Dec 27 17:39 libplplotd.so.5 -> ./libplplotd.so.5.0.1* -rwxrwxr-x 1 software software 384395 Dec 27 17:37 libplplotd.so.5.0.1* To avoid name clash problems all core names start with pl. Also both static and shared versions of the library are tagged identically, "d" for double precision and no "d" if single precision or the matrix library. I have also taken this opportunity to move to lower case names. These new library names are still not chiselled in stone, and may change again within the week. For example, I am considering moving from plmat to plmatrix. But in any case if you look in the appropriate lib directory or pay attention to the results of plplot_linkage, you should be okay. These three changes have been thoroughly tested on my Linux (Debian potato) system. In fact, I would claim from the results of these Linux tests that cvs HEAD is more stable than our 5.0.0 release. (For access to the plplot cvs HEAD follow the directions in www.sourceforge.net/projects/plplot.) However, these changes are untested on non-Linux systems. If these changes generate a problem for any system, don't hesitate to get in touch with me, but be prepared to do some of the work yourself to get things straightened out since I don't have access to systems other than Linux. Alan email: ir...@be... phone: 250-727-2902 FAX: 250-721-7715 snail-mail: Dr. Alan W. Irwin Department of Physics and Astronomy, University of Victoria, P.O. Box 3055, Victoria, British Columbia, Canada, V8W 3P6 __________________________ Linux-powered astrophysics __________________________ |