pspp-dev
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Fwd: a new factory build?


From: John Darrington
Subject: Re: Fwd: a new factory build?
Date: Mon, 3 Nov 2008 08:34:56 +0900
User-agent: Mutt/1.5.13 (2006-08-11)

On Sun, Nov 02, 2008 at 09:55:54AM +0100, unknown-1 wrote:
     >
     >     On openSUSE the merge version gives at runtime the error:
     >
     >     error while loading shared libraries: libpspp-0.7.0.so: cannot open
     > shared
     >     object file: No such file or directory
     >
     >
     > You may need to run ldconfig after make install.  Or if you're
     > installing to a non-standard location, then you may need to set
     > LD_LIBRARY_PATH to point to that location.
     >
     
     Right, but default libpsppire and libpsppwidgetss are installed in
     /usr/local/lib/pspp  and libpspp-0.7.0 and libpspp-core are installed in
     /usr/local/lib.  Offcourse both maps can be included in the library search,
     but it looks logical to me if it the libs are placed in 1 map. Was this
     intenionaly done this way?

Yes and no.  libpspp and libpspp-core are libraries containing
routines used by both pspp and pspppire (potentially other binaries
too).  It makes sense to put them in <prefix>/lib 

libpspp-widgets on the other hand, although it's a "shared"  library,
it is used only by psppire, and it's unlikely ever to be useful for
anything else.  Hence it goes in a directory private to psppire. 
The only reason it's a shared library at all, is because it has to be
dlopened, because that's the way libglade works.  At some stage, I'd
like to get rid of libglade (and hence libpspp-widgets) altogether and
use GtkBuilder instead, but that will require to Gtk functionality
which is not very mature yet. 

Anyway, so far as setting paths for libraries is concerned, note the
following:

For libpspp and libpspp-core, these are installed in <prefix>/lib.  If
<prefix> is a standard location for your OS installation dir (ie,
<prefix>/lib is in /etc/ld.so.conf) then you need to take no special
action for pspp{ire} to find them.

For libpspp-widgets,  psppire is compiled with the -R flag giving the
path to <prefix>/lib/pspp (you can check that it has been by typing 
"readelf -d <prefix>/bin/psppire | grep RPATH") Which means that no
special action should be required here either.  But I understand this
doesn't work on OpenSuSE.  I'm not an expert with SuSE, so  I don't
know why this is.

Hope this helps.
     


-- 
PGP Public key ID: 1024D/2DE827B3 
fingerprint = 8797 A26D 0854 2EAB 0285  A290 8A67 719C 2DE8 27B3
See http://pgp.mit.edu or any PGP keyserver for public key.


Attachment: signature.asc
Description: Digital signature


reply via email to

[Prev in Thread] Current Thread [Next in Thread]