0
我在用boost/asio编译下面的程序。用mingw编译出错提示
#include <boost/asio.hpp>
int main(){
boost::asio::io_service ioservice;
return 0;
}
但我发现了以下链接错误
C:\Users\...\ccsKX5WE.o:myprogram.cpp:(.text+0x136)undefined reference to `boost::system::generic_category()'
C:\Users\...\ccsKX5WE.o:myprogram.cpp:(.text+0x140)undefined reference to `boost::system::generic_category()'
C:/mingw/bin/.../ld.exe: C:\Users\...\ccsKx5WE.o: bad reloc address 0xe in section `.text$_|N5boost6system14error_categoryD2Ev]'
[email protected] error: ld return 1 exit status
我用MinGW的这样:
g++ -IC:\boost\boost_1_59_0 -o myprogram.exe -LC:\boost\boost_1_59_0\stage\lib -lboost_system-mgw48-1_59 myprogram.cpp
我使用所有不同版本的libboost_systems标志,如 lboost_system-mgw48-1_59.a lboost_system-mgw48-mt-1_59.a etc 和所有在一起,但没有工作编辑。
什么可能导致此问题?
订单事宜的联系。将'-lboost_system-mgw48-1_59'作为编译器命令行中的最后一项。 –
我尝试重新排序命令,但我仍然收到未定义的引用错误。 g ++ -IC:\ boost \ boost_1_59_0 myprogram.cpp -o myprogram.exe -LC:\ boost \ boost_1_59_0 \ stage \ lib -lboost_system-mgw48-1_59 – user22119
我设法弄清楚什么是错的。我不得不在最后加上-lwsock32 – user22119