From: Werner S. <sm...@ia...> - 2006-09-17 16:19:25
|
Hi Joe, > See > http://trshare.triumf.ca/~chuma/physica/homepage.html for info on > physica. Interesting, will have definitely a try. Overall, you run into a problem in the Linux world - how to distribute a Linux program, if you don't use the usual channels (rpm, deb, etc.). Since I'll run into this issue sooner or later, since I'm also trying to use plplot in my wxwidgets application. Anyway, two possibilities. shared plplot library: you can try the following: set the install directory other than /usr/local. (configure --prefix=/home/user/plplot_local) than you know exactly what files plplot installed and can even copy the whole directory. I would also suggest to turn off all drivers you don't need - this would minimize the dependencies. And you can do also the same for the wxwidgets library - install it in a own directory (--prefix=wxGTK_local) and turn off everything you don't need (--with-expat=false, etc). You get two directories which you can copy and set LD_LIBRARY_PATH accordingly. Mind though, that this is not good practice - since LD_LIBRARY_PATH is only for debugging purposes and not to use for installing executables. Anyway, you could also use the same directory for wxwidgets and plplot, so that everything is installed in the same directory and copy this to the extrema distribution. Also, you can use the command ldd on an executable or library, to find out, from which libraries it depends, and also shows if this library is not available on the system. This shouls help you a lot. It's also possible that you have the library, but the wrong version, which also might not work. > also works fine when wxWidgets is created statically, but I still have > to distribute a few .so files from the pango, cairo and gtk packages. > Anyway, everything works fine until I put PLplot into the mix. pango, cairo and gtk should definitely not distributed. This is really not a good idea, this libraries must be provided by the distribution, they are really basic. Ask the user to install this packages before he tries to start extrema. > I am still confused by what you say above. Making static wxWidgets libs > is no problem, but PLplot refuses to make a static wxwidgets driver. > According to Alan Irwin: "To clarify the situation, for the Unix case, > our CBS follows the same rules as our ABS, i.e., the psttf and wxwidgets > C++ device drivers are turned off whenever dynamic devices are > disabled." When I use the --disable-dyndrivers --disable-shared > --enable-static flags with PLplot configure, the wxwidgets driver is not > built. Are you saying that I must modify the configure/makefile > structure in PLplot in order to get a static wxwidgets driver? static plplot library: This could be possible for the configure case, but this can be overidden in cvs, where we use the new CMake Build System. You would need to check out from cvs the new sources (the wxwidgets driver) is also quite new and together with cmake you could compile plplot static with the wxwidgets static library. > In my experience, I have not had much trouble distributing software > for Linux. Programs built under RedHat 9 seemed to work fine under > many other Linux distributions. When the kernel was upgraded to v2.6, > most of my apps needed to be rebuilt, but that was not a problem. I > just distribute 2 versions. Scientific Linux apps seem to run fine > on most other Linux distributions, or is it just that most people in > physics labs use the same Linux? I don't use it :) I didn't even know it, but I'll have a look. Anyway, Redhat 9 is old enough, that apps built on this distribution will run on nearly all distr. but new enough, that you can compile anything on it. > If I could build PLplot with the wxwidgets driver as static libs, that > would be great. If you can tell me how to do it, that would also be > great, and I would appreciate it enormously. If I am simply missing > something obvious, please let me know. Could you first try the shared library solution with the directories, ldd and so on. If this doesn't work, than I write a short summary how to get the new sources from cvs and build a static library. Werner > > Joe Chuma > TRIUMF > Canada's National Laboratory for Particle and Nuclear Physics -- Dipl. Ing. Werner Smekal Vienna University of Technology |