Tôi đang làm việc trong Linux, Eclipse CDT, g ++, với thư viện Boost. Có chương trình hiện có sử dụng chủ đề Boost, tôi cố gắng liên kết nó tĩnh thay vì động./Thư mục usr/local/lib chứa các tập tin sau đây:Cố gắng liên kết tĩnh Boost
libbost_thread.a
libbost_thread.so
libbost_thread.1.41.0
động tác liên kết:
g++ -o"MyProgram" ./main.o -lboost_thread
liên kết tĩnh:
g++ -static -o"MyProgram" ./main.o -lboost_thread
sản xuất số lượng lớn các tin nhắn như:
tham chiếu không xác định đối với `pthread_mutex_init '
Làm cách nào để liên kết tĩnh với thư viện Boost?
Điều này gần như giống với câu hỏi trước đây của bạn http://stackoverflow.com/questions/2328439/boost-static-linking và các bài đăng trùng lặp thường bị cau mày. –
@Dirk - chúng có liên quan nhưng chắc chắn khác nhau. Câu hỏi trước là làm thế nào để nói cho người liên kết sử dụng .a thay vì .so. Câu hỏi này là về các vấn đề xảy ra khi anh ta làm điều đó. Tốt hơn là nên đăng câu hỏi có liên quan mới rồi tiếp tục câu hỏi mới cho câu hỏi hiện có. –
@Samuel: Tôi đã sửa chữa và học được từ bạn về tùy chọn liên kết '-pthread'. Cảm ơn! –