安装websocketpp库后编译还报错:/usr/bin/ld: cannot find -lwebsocketpp collect2: error: ld returned 1 exit status t3/CMakeFiles/t3_node.dir/build.make:318: recipe for target '/smartview/devel/lib/t3/t3_node' failed make[2]: *** [/smartview/devel/lib/t3/t3_node] Error 1 CMakeFiles/Makefile2:3555: recipe for target 't3/CMakeFiles/t3_node.dir/all' failed make[1]: *** [t3/CMakeFiles/t3_node.dir/all] Error 2 Makefile:145: recipe for target 'all' failed make: *** [all] Error 2
时间: 2023-09-17 16:11:08 浏览: 184
这个错误提示表明链接器仍然无法找到websocketpp库。你需要确保websocketpp库已经正确安装并且库的路径已经正确添加到系统路径中。你可以查看一下系统路径是否已经包含了websocketpp库的路径,如果没有,可以尝试将websocketpp库所在的路径添加到系统路径中。如果已经添加了,可以尝试重新编译并确保库文件名的大小写正确。如果还是无法解决问题,可以检查一下链接器的配置是否正确。
相关问题
/usr/bin/ld: cannot find _1: file format not recognized /usr/bin/ld: cannot find -laverage collect2: error: ld returned 1 exit status
这个错误通常是由于缺少库文件或者库文件路径不正确导致的。其中,/usr/bin/ld是GNU链接器,它用于将目标文件链接成可执行文件或共享库。下面是两种可能的解决方法:
1.检查库文件路径是否正确。如果库文件路径不正确,链接器就无法找到库文件。可以使用-L选项指定库文件路径,例如:gcc -L/path/to/lib file.c -laverage -o output。
2.检查库文件是否存在。如果库文件不存在,链接器也会报错。可以使用find命令查找库文件,例如:find / -name libaverage.so。如果库文件不存在,需要重新编译安装库文件。
/usr/bin/ld: cannot find -llog collect2: error: ld returned 1 exit status
在编译时出现"/usr/bin/ld: cannot find -llog collect2: error: ld returned 1 exit status"的错误是由于链接器无法找到名为"liblog"的库文件。这通常是因为缺少相应的库文件或者库文件的路径配置不正确。
解决这个问题的方法是创建一个软链接,将正确的库文件链接到系统库目录中。具体步骤如下:
1. 找到正确的库文件路径。可以使用以下命令来查找库文件:
```shell
find / -name "liblog.so"
```
2. 创建软链接。使用以下命令将正确的库文件链接到系统库目录中:
```shell
sudo ln -sf <正确的库文件路径> /usr/lib/liblog.so
```
请注意,上述命令中的"<正确的库文件路径>"应替换为实际的库文件路径。
阅读全文
相关推荐













