c++ - Eclipse cdt如何与 static 库链接

  显示原文与译文双语对照的内容
0 0

首先,我将在链接器/库中设置库,或者在"路径和符号"下设置它们。 我认为它们是相同的。 我 说 的 对 吗?

我的问题- 我需要链接 static 库,所以我尝试了一些东西:

第一次尝试我试图添加gt( 这是图书馆) 和gt路径链接库。 这样,它的编译和链接正确,但在运行时失败,因为当它试图加载共享库( 我想要 static 库时) 。 ! ) 错误

加载共享库时出错: libgtest.so. 0

第二次尝试 - 我尝试在路径中定义它,并在symbol中添加到库中的完整路径'/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

这篇文章 dosnt给出答案,而不是解释你如何定义不同的链接对 static vs 共享。

谢谢你

时间: 原作者:

0 0

经过大量的研究和没有相关的答案。 发现它我发现它在 eclipse cdt的有用链接!

显然,库需要存在于工作空间中。

原作者:
0 0

我建Botan加密库 static 图书馆,原因我不想进入这里,当我跟着网络上所有的步骤添加库路径和指定库 NAME 没有"lib"和". a",建造我的项目很好,但是,当我跑的时候,我一直得到"程序意外终止"(或相似的)错误。 最后我找到了解决方法。 转到项目属性> C/C++ 生成> 设置> 交叉 G++ 链接器并在 ${COMMAND}${FLAGS} 之间添加 -static,因此整个行如下所示:


${COMMAND} -static ${FLAGS} ${OUTPUT_FLAG} ${OUTPUT_PREFIX}${OUTPUT} ${INPUTS}

你的可能不同。我正在使用 Eclipse Luna 服务发布 2 ( 4.4.2 ),mingw-w64 mingw在 Windows 8.1上构建了/gcc 4.9.2项目。

原作者:
...