-1

我正在尝试在点云上实现 Delaunay 三角剖分,该点云在 3d 空间中使用笛卡尔坐标定义。

我在 Windows 7(64 位)和 CGAL 库上使用 QT 来做同样的事情。

该库已正确安装。

每次我尝试编译我的程序时,都会收到以下类型的错误。

error C2065:    'FLT_RADIX' : undeclared identifier
error C2057: expected constant expression
error C2065: 'FLT_MANT_DIG' : undeclared identifier
error C2057: expected constant expression

这些错误重复出现,因此总共有一百多个错误消息,因此编译停止。

我的 .pro 文件看起来像这样。

#-------------------------------------------------
#
# Project created by QtCreator 2013-01-11T14:53:46
#
#-------------------------------------------------

QT       += core

QT       -= gui

TARGET = dt_trial
CONFIG   += console
CONFIG   -= app_bundle

TEMPLATE = app

INCLUDEPATH += C:\\libraries\\CGAL_4_1\\include\\CGAL
INCLUDEPATH += C:\\libraries\\CGAL_4_1\\include
INCLUDEPATH += C:\\libraries\\CGAL_4_1
INCLUDEPATH += C:\\libraries\\boost_1_51
INCLUDEPATH += C:\\libraries\\CGAL_4_1\\build\\include\\CGAL
INCLUDEPATH += C:\\libraries\\CGAL_4_1\\auxiliary\\gmp\\include

LIBS += -LC:\\libraries\\CGAL_4_1\\build\\lib -CGAL_Core-vc100-mt-gd-4.1.lib
LIBS += -LC:\\libraries\\CGAL_4_1\\build\\lib -CGAL_ImageIO-vc100-mt-gd-4.1.lib
LIBS += -LC:\\libraries\\CGAL_4_1\\build\\lib -CGAL_Qt4-vc100-mt-gd-4.1.lib
LIBS += -LC:\\libraries\\CGAL_4_1\\build\\lib -CGAL-vc100-mt-gd-4.1.lib

SOURCES += main.cpp

在 CGAL 论坛上,我读到这与配置标志有关,如果我理解正确,那么在 QT 中它意味着 .pro 文件的内容。

我也在这里的cgal论坛上问过同样的问题

谁能提示我问题出在哪里?

此致

夜叉骑士

4

1 回答 1

1

该解决方案已由Laurent Rineau在CGAL 讨论论坛上提供。如果有人无法访问链接,这里是写的

现在我明白发生了什么。您的包含路径错误,当要求编译器包含时,由于它在目录 C:\libraries\CGAL_4_1\include\CGAL 中找到错误的包含路径。您必须从路径中删除后缀 \CGAL,因为前缀“CGAL/”是 CGAL 标头名称的一部分。以下是正确的值:

INCLUDEPATH += C:\\libraries\\CGAL_4_1\\include
INCLUDEPATH += C:\\libraries\\CGAL_4_1\\build\\include
INCLUDEPATH += C:\\libraries\\boost_1_51
INCLUDEPATH += C:\\libraries\\CGAL_4_1\\auxiliary\\gmp\\include
于 2013-01-14T20:30:25.100 回答