Renaming and symlinking shared libraries

Alejandro Pulver alepulver at FreeBSD.org
Mon Jul 3 17:29:04 UTC 2006


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

On Mon, 03 Jul 2006 11:40:27 +0200
Alexander Leidinger <Alexander at Leidinger.net> wrote:

> Quoting Alejandro Pulver <alepulver at freebsd.org> (from Sat, 1 Jul 2006  
> 20:25:22 -0300):
> 
> > AFAIK the symlinks would be (under lib/, in src->dest form) the
> > following. This shows the renaming of libtest to libtest-2, with major
> > version of 2.
> >
> > libtest-2.so -> libtest-2.so.2
> > libtest-2.so.2 -> test2/libtest-2.so.2 (real)
> >
> > Inside test2/.
> >
> > libtest.so -> libtest-2.so
> > libtest-2.so -> libtest-2.so.2 (real)
> >
> > Then I link a program with "cc -o test -L/usr/local/lib/test2 -ltest".
> > I did it with lua4 but after linking 'ldd' says it can't find
> > "libtest.so".
> >
> > Have I missed something?
> 
> You have to ldconfig the test2 directory, else the run-time linker  
> will not find the lib (it doesn't know where to search for it).
> 
> Bye,
> Alexander.
> 

Hello.

Thank you for your reply.

But then how do the databases/dbXX ports achieve the same result
without it? I thought it should find it since there is a symlink
in /usr/local/lib that points to it. I want that when I compile a
program with -L/usr/local/lib/test -ltest it actually links to test-2
for example. Please look at the dbXX ports to see what I mean.

Best Regards,
Ale
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.3 (FreeBSD)

iD8DBQFEqVPuiV05EpRcP2ERAkxPAJ41mHGBKYASa1Ju77Hnipzk7ygVIwCgkdEn
qlaW5mj0vNG1jdUrqbf6E9k=
=m5T0
-----END PGP SIGNATURE-----


More information about the freebsd-ports mailing list