|
| gcc library path Fra : Flemming Mertz |
Dato : 10-09-01 21:47 |
|
Hey...
Jeg sidder og bakser med at kompilere en applikation i gcc, og jeg kan
ikke få få gcc til at finde de library filer jeg vil linke med,
automatisk. Bruger gcc ikke LD_LIBRARY_PATH til at søge efter filerne,
eller har den sin egen path? Jeg har sat ld.so.conf med de directories
jeg vil bruge, og kørt ldconfig, men lige meget hjælper det!?
En ting der er mærkelig, er at jeg heller ikke kan bruge -L eller -l til
at angive stien til filerne... Nogen ideer?
Med venlig hilsen,
Flemming Mertz
| |
Claus Rasmussen (11-09-2001)
| Kommentar Fra : Claus Rasmussen |
Dato : 11-09-01 09:21 |
|
Flemming Mertz wrote:
> Jeg sidder og bakser med at kompilere en applikation i gcc, og jeg kan
> ikke få få gcc til at finde de library filer jeg vil linke med,
> automatisk. Bruger gcc ikke LD_LIBRARY_PATH til at søge efter filerne,
> eller har den sin egen path? Jeg har sat ld.so.conf med de directories
> jeg vil bruge, og kørt ldconfig, men lige meget hjælper det!?
LD_LIBRARY_PATH har ikke noget med gcc at gøre. LD_LIBRARY_PATH bruges til
at finde de dynamiske libraries et program skal linkes med når det starter
og altså lang tid efter, at det er blevet kompileret. Det samme med
ld.so.conf. Ret det tilbage igen.
Du skal i stedet bruge -L _og_ -l:
gcc -LSti-til-kataloget-med-dine-libraries -lNavn-på-library main.c
Navnet på libraries er uden "lib" og uden fnadderet efter punktummet. F.eks
bliver "libqt.so" til "qt".
-Claus
| |
Rasmus Bøg Hansen (11-09-2001)
| Kommentar Fra : Rasmus Bøg Hansen |
Dato : 11-09-01 09:21 |
|
Flemming Mertz wrote:
> Hey...
>
> Jeg sidder og bakser med at kompilere en applikation i gcc, og jeg kan
> ikke få få gcc til at finde de library filer jeg vil linke med,
> automatisk. Bruger gcc ikke LD_LIBRARY_PATH til at søge efter filerne,
> eller har den sin egen path? Jeg har sat ld.so.conf med de directories
> jeg vil bruge, og kørt ldconfig, men lige meget hjælper det!?
>
> En ting der er mærkelig, er at jeg heller ikke kan bruge -L eller -l
> til at angive stien til filerne... Nogen ideer?
Øh, der er netop -L, du skal bruge - LD_LIBRARY_PATH fortæller
programmer, hvor de skal søge efter libraries under kørslen. Har du f.
eks. libfoo.so eller libfoo.a i /usr/local/foo/lib, skal du bruge:
gcc -L/usr/local/foo/lib -lfoo [...]
for at få libfoo.{so|a} linket med.
Rasmus
--
-- [ Rasmus 'Møffe' Bøg Hansen ] ---------------------------------------
There is no insanity, just different perceptions of reality.
--------------------------------- [ moffe at amagerkollegiet dot dk ] --
| |
|
|