g++ / ld: ld findet nichts

Vom einfachen Programm zum fertigen Debian-Paket, Fragen rund um Programmiersprachen, Scripting und Lizenzierung.
Antworten
mtaesler
Beiträge: 21
Registriert: 14.08.2005 18:04:38

g++ / ld: ld findet nichts

Beitrag von mtaesler » 20.09.2005 14:12:57

Hallo.
ich wollte etwas compilieren dazu muss ich aber noch -lqtlib-mt angeben.
z.B g++ -o pr pr.cpp -Wall -L/usr... -I/usr... -lqtlib-mt
als fehlermeldung erhalte ich dann:
ld: cannot find qtlib-mt wenn ich aber den ganzen pfad angebe
/usr/share/qt3/lib/qt-lib-mt.3.so (weis das nicht mehr genau) funktioniert es.
woran kann das liegen?
Vielen Dank

Benutzeravatar
SubOptimal
Beiträge: 1709
Registriert: 10.01.2005 23:25:46
Lizenz eigener Beiträge: GNU Free Documentation License
Wohnort: bei Frankfurt

Beitrag von SubOptimal » 20.09.2005 15:22:17

Hi,

dem Linker wird der Pfad nicht bekannt sein.
Trag /usr/share/qt3/lib/ noch in die /etc/ld.so.conf ein. Danach noch ldconfig starten. Jetzt sollte es klappen.

SubOptimal

Benutzeravatar
peschmae
Beiträge: 4844
Registriert: 07.01.2003 12:50:33
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: nirgendwo im irgendwo

Beitrag von peschmae » 20.09.2005 20:31:04

eine -lqt Option wird expandiert zu "libqt.so" und die wird dann gesucht. Wenn du also eine Bibliothek mit so einem kruden Namen der nicht mit "lib" anfängt wie alle anderen einbinden willst musst du - wie du bemerkt hast - den Pfad komplett angeben.

Allerdings ist bei mir Qt ganz brav unter /usr/lib vertreten:
libqt-mt.so.3
libqt-mt.so.3.3
libqt-mt.so.3.3.5
d.h. ich linke dann mit Option -lqt-mt

MfG Peschmä
"er hätte nicht in die usa ziehen dürfen - die versauen alles" -- Snoopy

Antworten