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-----
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.