在VS code编译make -j4后出现 /usr/bin/ld: cannot find -ljsonrpccpp-httpclient collect2: error: ld returned 1 exit status
时间: 2023-08-27 19:03:36 浏览: 101
这个错误表明链接器无法找到名为"ljsonrpccpp-httpclient"的库。您可以尝试以下解决方法:
1. 确认库是否正确安装:首先,请确保您已按照之前的步骤正确安装了jsonrpccpp-httpclient库。您可以通过运行以下命令来确认库是否存在:
```
ls /usr/local/lib/libjsonrpccpp-httpclient.*
```
如果库存在,应该会显示库文件的路径和名称。如果不存在,请重新检查之前的安装步骤。
2. 检查库路径:在CMakeLists.txt文件中,确保使用了正确的库路径。请确保以下代码行中的路径与您系统上实际的路径匹配:
```
link_directories(/usr/local/lib)
```
3. 更新动态链接器缓存:在终端中运行以下命令来更新动态链接器缓存:
```
sudo ldconfig
```
4. 检查库名称:如果上述解决方法都没有解决问题,您可以尝试更改CMakeLists.txt文件中的链接选项。请将以下代码行:
```
target_link_libraries(your_executable_name jsonrpccpp-client)
```
更改为:
```
target_link_libraries(your_executable_name jsonrpccpp-httpclient)
```
尝试以上解决方法后,重新编译和运行项目,看看问题是否得到解决。如果问题仍然存在,请提供更多终端输出信息,以便我们更好地了解问题所在。
阅读全文