PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Libs statisch linken


SamStone
2006-04-24, 23:12:23
Hallo,

Ich kompiliere hier gerade ein (C++) Programm, welches ich hinterher in ein deb Paket packen will, und an ein paar Leute weiterverteilen möchte.
Dieses Packet ist jedoch von einer Library abhängig, die es standardmäßig in der Distribution nicht gibt. Ich habe mich entschieden, die entsprechenden Sachen daher mit in die kompilierte executable reinzulinken (also nicht dynamisch gegen zu linken).

Wie krieg ich sowas genau hin? Unter "man ld" hab ich nur Hinweis auf den "-static" Parameter gefunden, aber ich weiß nicht genau was ich damit anfangen soll.

Eine andere Idee war, die Lib Datei einfach mit in die Normale liste der .o Dateien mit aufzunehen. Also ohne ein -l Flag davor zu schreiben und so. Dann krieg ich beim kompilieren Fehlermeldungen dieser Art:
/usr/local/lib/libCEGUIOgreRenderer.so.0.0.0: undefined reference to `Ogre::Exception::getFullDescription() const'
/usr/local/lib/libCEGUIOgreRenderer.so.0.0.0: undefined reference to `Ogre::Root::getSingletonPtr()'

Jemand ne Ahnung was man da machen kann?