这是带有相关错误的make命令:

g++ -g -O2 -Wl,-rpath=../../../external/boost-1.55.0-x86_64-linux-gcc-4.8.2/lib -pthread -o xml_wrapper_tester xml_wrapper_tester-runner.o  -L../../../external/boost-1.55.0-x86_64-linux-gcc-4.8.2/lib -lboost-system ../xml_wrapper/.libs/libxml_wrapper.a -pthread
/usr/bin/ld: cannot find -lboost-system


进入make文件所在的目录和ls -l,指定给-L的路径表明该库存在。

[mehoggan@localhost xml_wrapper_tester]$ ls -l ../../../external/boost-1.55.0-x86_64-linux-gcc-4.8.2/lib | grep system
-rw-rw-r--. 1 mehoggan mehoggan  217676 May  5 22:37 libboost_filesystem.a
lrwxrwxrwx. 1 mehoggan mehoggan      29 May  5 22:37 libboost_filesystem.so -> libboost_filesystem.so.1.55.0
-rwxrwxr-x. 1 mehoggan mehoggan  116955 May  5 22:37 libboost_filesystem.so.1.55.0
-rw-rw-r--. 1 mehoggan mehoggan   49154 May  5 22:37 libboost_system.a
lrwxrwxrwx. 1 mehoggan mehoggan      25 May  5 22:37 libboost_system.so -> libboost_system.so.1.55.0
-rwxrwxr-x. 1 mehoggan mehoggan   20401 May  5 22:37 libboost_system.so.1.55.0


为什么g ++无法找到boost_system?

最佳答案

错误似乎与您指定的-lboost-system参数有关,该参数确实不在您列出的文件夹中。

尝试使用-lboost_system代替。

关于c++ - “找不到-lboost-system”,但是文件系统上存在库,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/23507253/

10-11 16:13