[M3devel] how to find dependent .so files?

Jay jay.krell at cornell.edu
Tue Apr 28 15:15:06 CEST 2009


If you take one of my suggestions, then yes you can do that for .sos.
But $ORIGIN/../lib is one generic perhaps inefficient runpath for .sos and executables, and hypothetically also for non-public shipped executables (with my suggestion that they go to lib, if they don't already), that's why.
 
 
The next step is just to smush lib and bin together, as is done on NT386.
Probably people won't like that, keep files out of $PATH.
 
 
I don't believe $ORIGIN works asis.
if /cm3/lib/libfoo.so symlinks to /cm3/pkg/foo/target/libfoo.so
then $ORIGIN is /cm3/pkg/foo/target, not /cm3/lib.
I'd like to be wrong here but I don't think I am.
 
 
So reversing the symlinks or making them hardlinks is ok?
 
 
 - Jay


----------------------------------------
> From: vapier at gentoo.org
> To: m3devel at elegosoft.com
> Date: Tue, 28 Apr 2009 09:00:26 -0400
> CC: jay.krell at cornell.edu
> Subject: Re: [M3devel] how to find dependent .so files?
>
> On Tuesday 28 April 2009 04:03:13 Jay wrote:
>> Normally we have:
>>
>> /usr/local/cm3/bin/someexe
>> /usr/local/cm3/lib/libfoo.so symlink to ../pkg/foo/target/libfoo.so
>> /usr/local/cm3/lib/libbar.so symlink to ../pkg/bar/target/libbar.so
>>
>> Linking from someexe to $ORIGIN/../lib works, ok.
>> But from libfoo to libbar requires $ORIGIN/../../../lib.
>> or $ORIGIN/../../bar/target.
>
> what's wrong with just $ORIGIN ? they're in the same directory already.
> -mike


More information about the M3devel mailing list