我很困惑应该在链接器/库下设置库还是将它们设置在“路径和符号”下。我认为它们是一样的。我对么?
我的问题的任何方式 - 我需要链接静态库,所以我尝试了几件事:
首先尝试我尝试在链接库中添加gtest(这是库)和gtest路径。这样它的编译和链接正确,但在运行时失败,因为当它试图加载共享库时(我想要静态库!)错误是
加载共享库时出错:libgtest.so.0
第二次尝试- 我尝试在路径和符号中定义它,将完整路径 '/root/workspace/gmock/gtest/lib/.lib/libgtest.a' 添加到库中。在这种情况下,我在链接中遇到错误:
g++ -L/root/workspace/gmock/lib/.libs -L/root/workspace/gmock/gtest/lib/.libs -o "playground" ./src/p.o ./src/playground.o -lpthread -l/root/workspace/gmock/gtest/lib/.lib/libgtest.a -l/root/workspace/gmock/lib/.lib/libgmock.a
/usr/bin/ld: cannot find -l/root/workspace/gmock/gtest/lib/.lib/libgtest.a
这篇文章没有给出答案,也没有解释你如何定义静态链接和共享链接。
谢谢