pspp-dev
[Top][All Lists]
Advanced

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

Re: is /usr/lib*/libpsppire.so required for normal run of psppire?


From: John Darrington
Subject: Re: is /usr/lib*/libpsppire.so required for normal run of psppire?
Date: Mon, 23 Mar 2009 07:59:15 +0900
User-agent: Mutt/1.5.18 (2008-05-17)

On Sun, Mar 22, 2009 at 10:32:18PM +0100, Matej Cepl wrote:
     I am not a C programmer (just maintaining Fedora package of pspp) 
     so I am probably just confused. Please, take a look at 
     https://bugzilla.redhat.com/show_bug.cgi?id=471180 and tell what 
     you think. I thought that .so files are symlinks and useful only 
     for development against the library ... Moreover, my 
     /usr/lib*/lib*.so files are part of -devel packages on Fedora. On 
     the top of that, I cannot reproduce the bug on my system. Does 
     anybody have any idea? If yes, could you please comment to that 
     bug, please?


The short answer is yes, you need it.

For binaries which dynamically link against .so files, a common
convention is for binaries to link directly to libxxx.so.0 and
development packages, like you say, to have a symbolic filesystem link
from libxxx.so to libxxx.so.0

However, some programs (psppire is one of them) need to dynamically
*load* these .so files using the dlopen system call.  If they're not
available at run time, then problems will occur.  Whilst the program
will startup without libpsppire.so, it will fall over as soon as any
custom widgets need to be displayed (typically whenever a dialog box
is opened).

This rather clumsy situation is a consequence of how libglade manages
custom widgets, not part of the core gtk+ library.  In pspp "master"
version (0.7.x and up) libglade isn't used,  so there is no dynamic
loading and the situation is much neater.

I hope this helps.

J'

-- 
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]