From: diego v. <die...@ya...> - 2015-04-23 15:17:08
|
Hi Alan, I solved the problem using the "1." alternative. Now the examples work correctly. Thanks for your help! Regards,Diego De: Alan W. Irwin <ir...@be...> Para: diego vommaro <die...@ya...> CC: "plp...@li..." <plp...@li...> Enviado: Jueves, 23 de abril, 2015 2:56:22 Asunto: Re: [Plplot-general] Run Plplot examples on Linux Debian Hi Diego: Thanks for your interest in PLplot. On 2015-04-22 23:57-0000 diego vommaro wrote: > Hello all, I ´ ve built and installed PLplot as below follows: > mkdir ~/plplot-build_5.11.0cd ~/plplot-build_5.11.0cmake -DCMAKE_INSTALL_PREFIX=/usr/local \~/plplot-5.11.0 >& cmake.out > make >& make.outmake install >& make_install.out > *.out files are OK apparently. Yes, they look good to me too (accept for all the missing soft dependencies indicated by cmake.out WARNINGS which you may want to address (if interested in those additional components of PLplot) by installing more development packages later. > > and I ´ ve built a C example without any problem as below follows: > gcc x00c.c -o x00c `pkg-config --cflags --libs plplot` > > But, when I run the example: > ./x00cx00c: error while loading shared libraries: libplplot.so.13: cannot open shared object file: No such file or directory > > can somebody help me? did I forget anything? The thing you forgot (or else forgot to mention) is all Unix run-time loaders need to know the location of the libraries if they are in a non-standard location. There are a whole bunch of different ways to deal with that issue, but I will only mention two of them. 1. Set rpath when building an example. For an example of how to do that see $prefix/share/plplot5.11.0/examples/c/Makefile which builds all examples in a runnable state for me. Note /usr/local belongs to root so you need root privileges to install there. So instead, I use a prefix under the control of my user account (e.g., /home/software/plplot/install) which does not require root privileges to install PLplot. And for that situation the C examples built by the Makefile (e.g., $prefix/share/plplot5.11.0/examples/c/Makefile) + pkg-config approach (with PKG_CONFIG_PATH="$prefix/lib/pkgconfig "just work". 2. Turn off rpath for the PLplot installed libraries using the cmake option -DUSE_RPATH=OFF (I am pretty sure this is required to get LD_LIBRARY_PATH to work properly, and all distro packagers for PLplot routinely use this option) and set the environment variable LD_LIBRARY_PATH to /usr/local/lib Setting LD_LIBRARY_PATH might not be needed on Debian for that particular root-owned prefix, see discussion in <http://stackoverflow.com/questions/4743233/is-usr-local-lib-searched-for-shared-libraries>, where Debian considers /usr/local/lib to be a standard location for the run-time loader to search, and other distros do not. Warning. My remarks about 2., might be subject to correction because I always use 1 which I _know_ works on Debian stable. 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); the Time Ephemerides project (timeephem.sf.net); PLplot scientific plotting software package (plplot.sf.net); 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 __________________________ |