/ Forside / Teknologi / Operativsystemer / Linux / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
Linux
#NavnPoint
o.v.n. 11177
peque 7911
dk 4814
e.c 2359
Uranus 1334
emesen 1334
stone47 1307
linuxrules 1214
Octon 1100
10  BjarneD 875
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 ] --

Søg
Reklame
Statistik
Spørgsmål : 177557
Tips : 31968
Nyheder : 719565
Indlæg : 6408885
Brugere : 218888

Månedens bedste
Årets bedste
Sidste års bedste