Re: Directing to User-Installed Libraries
Lasse Kliemann <[email protected]>
| Newsgroups | gmane.lisp.scheme.bigloo |
|---|---|
| Message-ID | <[email protected]> |
Here is what I found out that works. Say we would like to link against a library in /home/snyder/lib. Then configure Bigloo with: ./configure --bflags='-ldopt -L/home/snyder/lib -ldopt -Wl,-R,/home/snyder/lib' \ --lflags='-L/home/snyder/lib -Wl,-R,/home/snyder/lib' \ --ldflags='-L/home/snyder/lib -Wl,-R,/home/snyder/lib' I'm not sure if this is the *clean* way to do it, but it appears to be fine. No need for setting any CFLAGS or LDFLAGS env variables. Lasse Kliemann <[email protected]> writes: > Greetings, I'm having trouble directing Bigloo to use libraries > installed in non-standard locations. Say, I'd like Bigloo to use the > OpenSSL library installed in /home/snyder/openssl instead of that in > /lib64 or /usr/lib or whatever. > > My first approach was using LD_RUN_PATH and LDFLAGS, the latter > containing -L/home/snyder/openssl -Xlinker -R/home/snyder/openssl. > > This does the trick usually, but in Bigloo's case it wasn't enough since > some (or perhaps all, didn't check) of it's shared libraries > (libbigloo*so) were still linked against the system library. This could > be verified using ldd. > > Studying the make output, I found that those libraries are linked using > Bigloo's library directory as rpath, so I put appropriate symlinks in > that place (say, if Bigloo is installed into /home/snyder/bigloo, I put > symlinks from /home/snyder/bigloo/lib to all the libraries in > /home/snyder/openssl/lib). This seems to be sufficient on some of my > systems, but on others even though libbigloo*so picks up the correct > library now, something is still wrong. Namely, my user-installed OpenSSL > does not have SSLv2 support. But it seems that when Bigloo is compiled, > it detects SSLv2 support and activates it. When I later try to build > my own Bigloo programs, I get that SSLv2_client_method is an undefined > symbol. Like I said, this happens on some systems (on Centos for > example) but not on others (Ubuntu for example), which of course may > have hundreds of different reasons. > > Could anyone give me a hint how to proceed? How do you link Bigloo > against libraries in non-standard locations - and, in particular, tell > it to ignore the system-wide versions of those libraries? > > Thanks a lot! > > I'm using the latest stable, 4.1-a2. -- Kind Regards / MfG Dr. Lasse Kliemann Westring 269, 24116 Kiel, Germany E-Mail: [email protected] OpenPGP Key: 0x4296A3E08903D018 Phone: +49 162 66 88 468 Web: http://lassekliemann.de Work Address: Department of Computer Science Kiel University Christian-Albrechts-Platz 4 24118 Kiel, Germany E-Mail: [email protected] Phone: +49 431 880 7454 Web: https://www.informatik.uni-kiel.de/~lki
signature.asc
(application/pgp-signature, 835 B)
-----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.11 (GNU/Linux) iQIcBAEBAgAGBQJU2LeiAAoJEEKWo+CJA9AYiN4P/3H4HNUTrqVtQUBRI2+wyUAx 5a2FXHSGn9pGrzQFpgHzvWqs8sLF7gSFELndqmP/m8LRrGs7L9m256Jm+QD19Nsk qLOUdPGUPtdWCqNiKzOASAQU3inlhlt/iBX7NHfjGBbQt0ADPtkLTl9/rvXVY2ny aibpo3B2bwk22E1R0WHaQlIiWPclTU6djahBMuBnQnKaHZqvMeRbf75AuDHTstSw V0vn8GwinzTwTSImBHpJgk9gHfjLG8WEw4170noqOV46QAK9v6dEW3CPPgSkiNnn Dr31igscTVrZNwUZ160Uh2an/v/T+VzPMv0ZpTOwmM/ZOLQkzAIoA773vbIt5LZE A+boehgBeRFgaKkHQZkXPIF6RbENJsH6zVeT20zR8V3hBDgf1wredNsTkBKLwEJT I7D3XsD/JIuFddgArIFnD0yQKTqnlAA/PKJSWsSHDvoK3aYV7bJWoQZbREyMF8M4 3hbJ3PqPS/KrO+mWKd7jP95fRtqnzLgiJk0OlNakKPc84g8LaZdABpmFDMRWtbgN nuVpYZwh73P/C8acok0W6/FrIc+FLiCVL11UfExpmJV8Sce+5n9svnDlRZGGZ+yy pewHHkDCcaOBx+9YUoEdCfk6fXoa9V00lvNLvhJ1FiqaS4gaaQfSJhmExC3M77ge 3gvJwXH/rl1qxbYrR9EZ =S7iu -----END PGP SIGNATURE-----