CGAL编译/链接器错误

时间:2018-06-11 20:19:43

标签: c++ eclipse cgal nsight

我正在尝试在Nvidia的Nsight Eclipse工作室(Eclipse CDT)中设置CGAL。我不打算将它与CUDA一起使用,但是我需要将它用于我正在进行的项目的另一部分。

我得到的错误是:

/home/me/work/x64_linux/cgal/include/CGAL/GMP/Gmpq_type.h:62: 
undefined reference to `__gmpq_init'

接下来是关于gmpq的其他几个相同的错误。我认为这是一个关联问题,但据我所知,我不确定我哪里出错了。我的其他依赖链接很好。我通过apt-get安装了CGAL,并按照手册中给出的设置说明进行操作。也许我在那里的某个地方出了问题,但是长话短说,我很失望,为了让它发挥作用!任何帮助/提示表示赞赏!

编辑:这是解决方案,对于将来可能偶然发现这个问题的任何人。

出于某种原因,尽管输入正确,但IDE仍错误地引用了库。我只是打开一个新项目并将我的文件迁移过来。添加库遵循Eclipse中的标准过程:转到项目属性 - >路径和符号。将库所在目录的路径添加到库路径,并将库名添加到库中。

2 个答案:

答案 0 :(得分:0)

  1. 确保在编译代码时,应将-l选项传递给编译器以链接到CGAL
  2. 如果 -l选项传递给编译器,请确保可以从路径中的文件夹访问CGAL库,或者要将完整路径传递给CGAL图书馆。
  3. 如果没有看到您的构建设置,我就无法说出来了。

答案 1 :(得分:0)

这是解决方案,对于将来可能偶然发现这个问题的任何人。

出于某种原因,尽管输入正确,但IDE仍错误地引用了库。我只是打开一个新项目并将我的文件迁移过来。添加库遵循Eclipse中的标准过程:转到项目属性 - >路径和符号。将库所在目录的路径添加到库路径,并将库名添加到库中。如果您需要澄清,请询问。