2010-02-17 46 views
2
g++ simple_wget.cpp -lssl -lboost_system -lpthread -lcrypto -lboost_filesystem 
/tmp/cc2jNHvk.o: In function `__static_initialization_and_destruction_0(int, int)': 
simple_wget.cpp:(.text+0x5eb): undefined reference to `boost::system::get_posix_category()' 
simple_wget.cpp:(.text+0x5f5): undefined reference to `boost::system::get_posix_category()' 
collect2: ld returned 1 exit status 

我知道在boost 1.38中get_posix_category()被刪除。請幫助我,我能做些什麼來解決這個問題?未定義對`boost :: system :: get_posix_category()'的引用

回答

0

通過向g ++添加-static參數可以解決問題。爲什麼它有效,所以我不知道。

2

添加-static聽起來像一個壞主意,你可以用它來破壞你的代碼的其他部分。要使用-static,鏈接庫應該使用靜態編譯,有時不會發生。

未定義的引用通常表示未找到boost_system。添加-I/path/to/boost_system.so/.dylib/.dll和或-L/path/to/boost_system.so/.dylib/.dll

您應該首先找到boost_system。

相關問題