statisch zu verknüpfen Ich arbeite in Linux, Eclipse CDT, g ++, mit Boost-Bibliothek. Mit einem vorhandenen Programm, das Boost-Thread verwendet, versuche ich, es statisch statt dynamisch zu verknüpfen./Usr/local/lib-Verzeichnis enthält die folgenden Dateien:Versuchen, Boost
libbost_thread.a
libbost_thread.so
libbost_thread.1.41.0
Dynamische Verknüpfung Werke:
g++ -o"MyProgram" ./main.o -lboost_thread
Statische Verknüpfung:
g++ -static -o"MyProgram" ./main.o -lboost_thread
produziert riesige Anzahl von Nachrichten wie:
undefinierter Verweis auf `pthread_mutex_init '
Wie kann ich statisch mit der Boost-Bibliothek verknüpfen?
Dies ist fast identisch mit Ihrer vorherigen Frage http://StackOverflow.com/Questions/2328439/Boost-Static-Linking und doppelte Beiträge sind in der Regel verpönt. –
@Dirk - sie sind verwandt, aber definitiv anders. Die vorherige Frage war, wie man den Linker anweist, statt der .so die .a zu verwenden. Diese Frage handelt von Problemen, die auftreten, wenn er das tut. Es ist besser, eine neue verwandte Frage zu stellen und dann neue Fragen an eine bestehende zu knüpfen. –
@Samuel: Ich stehe korrigiert, und lernte von Ihnen über die Linke-Option "-Pthread". Vielen Dank! –