将库添加到现有项目netbeans

时间:2013-02-19 22:25:05

标签: c++ netbeans

我正在为我公司的(另一个人)现有项目添加扩展。现在我想导入一个像boost这样的现有库。我正在使用netbeans来调试现有项目。现在,为了将库导入netbeans,通常会执行两个步骤:

  1. 包含目录
  2. 链接器>添加图书馆。
  3. 但是,当我右键单击我现有的项目时,Linker-> Add Library选项不会出现。 (虽然我已将目录包含在那个选项中)。

    有人可以指导我如何通过链接器将库添加到现有项目中?我的项目是用C ++编写的

1 个答案:

答案 0 :(得分:1)

假设您正在使用unix / linux变体:

标题和库链接的目录是两个不同的东西。包含目录将需要标题,但在编译之后,可能还需要驻留在库中的实际编译代码(* .a,* .so等...)。

例如,如果您使用的是pthread,除了需要包含的标题之外,还需要libpthread。

链接时,需要提供与pthread链接的标志,即:-lpthread 您可以使用find或locate在unix系统上进行搜索以查找库。在我的情况下,它在

  

/usr/lib/libpthread.so的

因此,

  

gcc myfile.c -lpthread -o myfile

将myfile.c与pthread库链接

然而,

  

gcc -L / usr / local / lib /

告诉gcc在/ usr / local / lib下查找库(而不是标题!)。

告诉标题所在的netbeans是不够的,它可能会给你链接错误。告诉库所在的netbeans可能就足够了,因为它可能使用正确的标志。如果这也失败了,那么你必须同时指定库标志和路径。

或者,您可以使用cmake,make等工具自动执行此过程并提供更多控制IMO。

See Link 1 See link 2