如何将库添加到Eclipse C

时间:2013-12-08 14:33:44

标签: c++ eclipse libraries

我已经看到了其他几个答案,以便在eclipse中为我的C + =项目添加一个库。我试图使用-L“和文件夹的路径”和-l在Miscellaneous部分添加路径到链接“在乞讨中没有lib前缀的名称和最后的.so” 我尝试添加libxl库,所以我使用-lxl(对于libxl.so)和-L / home / username / libxl3.5.3.0 / lib /(这是lib文件的位置)。

我还试图在Linker菜单下给它并在Libraries部分添加名称和路径。

我收到错误:/ usr / bin / ld找不到-lxl文件并返回错误

我使用-static到链接器以生成包含所有lib的可执行文件但是当我不使用-static时,lib的问题从构建解析但仍然当我尝试运行程序时我得到错误,我程序无法打开共享文件libxl.so导致该文件不存在。我该如何解决这个问题?

1 个答案:

答案 0 :(得分:2)

在eclipse中将库名添加到C ++项目时,不要在其前面添加-l。 Eclipse会在调用编译器时为您执行此操作。例如,如果您想要boost_regex库,只需输入boost_regex 而不是 lboost_regex。 Eclipse将为您完成剩下的工作。或者在您的具体情况下,只需使用xl而不是lxl。正如erenon在下面的评论中指出的那样,您不需要-,也不需要路径前的-L。请注意,上述内容适用于使用Project->Properties->C/C++ General->Paths and Symbols对话框表单添加库以使用LibrariesLibrary Paths标签添加库的方法。

您正尝试静态链接到共享库。根据我的经验,我总是使用* .a文件而不是* .so文件来使用静态链接。另一个答案Static link of shared library function in gcc似乎表明您实际上无法静态链接到* .so文件。