在Eclipse中,我创建了两个库。其中一个是共享另一个是静态的。我在Eclipse中编译它们,因此创建了一个Debug文件夹(对于两个库),这些文件夹包含make-files以及目标文件(* .o)和依赖项引用文件(* .d)。除此之外,静态库包含* .a文件。
现在我创建一个新项目以及在这个项目中使用这些库的内容。通常,当我使用库时,我键入#include <libraryname>
。但是,如果我使用#include <mylibraryname>
它不起作用(我得到未解决的包含)。这并不奇怪,因为Eclipse应该以某种方式知道我的库所在的位置。所以,我的问题是如何告知Eclipse我的库的位置。
已添加根据建议,我执行以下序列“项目 - &gt;属性 - &gt; C / C ++构建 - &gt;设置 - &gt;工具设置 - &gt; GCC C ++链接器 - &gt;库”。然后,在“库(-l)”字段中我添加“StaticList”(因为我有“libStaticList.a”文件)并在“库搜索路径(-L)”字段中我给出了目录的全名我的“libStaticList.a”位于。然后单击“应用”和“确定”。但它没有帮助。 Eclipse不喜欢#include <StaticList>
。它抱怨说:“未解决的包容......”。
答案 0 :(得分:3)
#include
标头只使编译器知道这些标头中的函数存在。这些函数的实际实现需要由链接器链接。这就是您构建的库(.a
)文件的位置。请查看this thread以获取有关如何使用Eclipse链接库的示例。
答案 1 :(得分:0)
我认为你需要#include“yourlibrary.cpp”(在双引号之间)而不是&lt; &GT;