一,下载安装文件
1,CGAL-3.7:https://gforge.inria.fr/frs/download.php/27647/CGAL-3.7-Setup.exe
2,boost_1_47_0:http://cdnetworks-kr-2.dl.sourceforge.net/project/boost/boost/1.47.0/boost_1_47_0.7z
3,qt-4.7.3:http://get.qt.nokia.com/qt/source/qt-win-opensource-4.7.3-vs2008.exe
http://get.qt.nokia.com/vsaddin/qt-vs-addin-1.1.9.exe
4,cmake-2.8.5:http://www.cmake.org/files/v2.8/cmake-2.8.5-win32-x86.zip
二,安装cmake-2.8.5
解压cmake-2.8.5-win32-x86.zip,并将E:\Himalayas\dev\6-SDK\cgal\source\CGAL-3.7\auxiliary\cmake\cmake-2.8.5-win32-x86\bin添加到环境变量PATH中。
三,安装boost_1_47_0
安装过程参见VS2008下编译boost_1_47_0
说明:boost_1_47_0同时提供windows安装版本,但下载时间过长,建议下载源码自己编译。
四,安装qt-4.7.3
1,安装qt-win-opensource-4.7.3-vs2008.exe
2,安装qt-vs-addin-1.1.9.exe
说明:只需下载qt预编译库即可,无需下载SDK开发包。
五,安装CGAL-3.7
1,安装CGAL-3.7-Setup.exe,此过程要保持网络连接,安装程序会下载GMP和MPFR预编译库。安装过程勾选全部的环境变量设置;
2,设置环境变量:QTDIR = C:\Qt\4.7.3
3,设置环境变量:BOOST_ROOT = E:\Himalayas\dev\6-SDK\cgal\source\CGAL-3.7\auxiliary\boost\boost_1_47_0
4,打开命令窗口,定位到CGAL-3.7所在目录,E:\Himalayas\dev\6-SDK\cgal\source\CGAL-3.7
5,运行cmake-gui . (cmake-gui后面有空格和点,表示在当前目录,这点很重要)
6,点击configure选择编译器:Visual Studio 9 2008,其他默认,
如果需要使用CGAL中的demo和examples,建议勾选WITH_demos和WITH_examples,
否则使用demo和examples会需要自己设置工程环境
7,再次点击configure,程序开始对CGAL-3.7进行配置,如无错误,CMake会提示Configuring done,Generate按钮变为可用
8,点击Generate按钮,会在CGAL-3.7目录下生成VS2008解决方案,如无错误,CMake会提示Generating done
9,关闭CMake
10,打开CGAL.sln
11,重新生成ALL_BUILD工程,编译完成后CGAL-3.7目录下会生成lib目录,存放所生成的库文件
12,CGAL安装完毕
六,CGAL安装验证
1,配置VS2008
1)添加头文件路径:工具-选项-项目和解决方案-包含文件
C:\Qt\4.7.3\include
E:\Himalayas\dev\6-SDK\cgal\source\CGAL-3.7\auxiliary\gmp\include
E:\Himalayas\dev\6-SDK\cgal\source\CGAL-3.7\auxiliary\boost\boost_1_47_0
E:\Himalayas\dev\6-SDK\cgal\source\CGAL-3.7\include
2)添加库文件路径:工具-选项-项目和解决方案-库文件
C:\Qt\4.7.3\lib
E:\Himalayas\dev\6-SDK\cgal\source\CGAL-3.7\auxiliary\gmp\lib
E:\Himalayas\dev\6-SDK\cgal\source\CGAL-3.7\lib
E:\Himalayas\dev\6-SDK\cgal\source\CGAL-3.7\auxiliary\boost\boost_1_47_0\stage\lib
2,创建Win32控制台程序
1)工程-属性-C++常规
C:\Qt\4.7.3\include\QtCore,C:\Qt\4.7.3\include\QtGui,C:\Qt\4.7.3\include,C:\Qt\4.7.3
2)工程-属性-链接器-输入
C:\Qt\4.7.3\lib\qtmaind.lib C:\Qt\4.7.3\lib\QtGuid4.lib C:\Qt\4.7.3\lib\QtCored4.lib
3)添加代码
#include <iostream> #include <boost/format.hpp> #include <QtGui> #include <CGAL/Qt/GraphicsViewNavigation.h> #include <QLineF> #include <QRectF> int main(int argc, char **argv) { QApplication app(argc, argv); QGraphicsScene scene; scene.setSceneRect(0,0, 100, 100); scene.addRect(QRectF(0,0, 100, 100), QPen(QColor(255,0,0))); scene.addLine(QLineF(0,0, 100, 100)); scene.addLine(QLineF(0,100, 100, 0)); QGraphicsView* view = new QGraphicsView(&scene); CGAL::Qt::GraphicsViewNavigation navigation; view->installEventFilter(&navigation); view->viewport()->installEventFilter(&navigation); view->setRenderHint(QPainter::Antialiasing); view->show(); return app.exec(); }4)运行结果