CGAL 4.11 版 win10-vs2015-64bit 编译与开发关键点指南
2017-09-22 12:43
423 查看
一. 编译CGAL
这个版本的编译在官方文档中有很多指导,但是依然有个别细节需要注意。
大概情况如下:
编译demo时,用太新的qt(比如qt5.8)会导致interface未定义错误。最后版本罗列如下:qt5.6msvc201564、boost 1.60 、libQGLViewer2.6.3、tbb64 201702...、 Eigen3 、
0. 官网下载CGAL-4.11-Setup.exe,这是一个解压源码的exe,里面并没有lib和dll,安装后需要进行下面的编译步骤。安装在比如G:\dev\CGAL-4.11-beta1。安装时不选html,官网文档很好用。
1. 使用CMake GUI,假设大家都很熟悉cmake的使用。
2. 有一个必备的第3方Lib列表需要安装,阅读官方文档会收获更多的信息:
8.2 Boost 这个到官网下载Binary版:boost_1_60_0-msvc-14.0-64.exe(270多MB),安装在在比如H:\boost_1_60_0;
8.7 libQGLViewer,
8.8 Eigen3, 最好也配置,很多项目要用它;这个不用编译,直接引用头文件的一个数学库。
8.9 VTK自己手工编译的,安装在D:\Program Files\VTK\。配置CMake中的VTK_DIR为 D:\Program Files\VTK\lib\cmake\vtk-8.0
配置CMake GUI时需要注意:
1. Boost_INCLUDE_DIR是 H:/boost1.6.0;而不是H:/boost_1_65_1/boost。因为代码中都是#include <Boost/***.h>。CMakegui中选中CGAL_Boost_USE_STATICLIBS,并
2. Qt5_DIR 参考配置为D:/Qt/Qt5.6.0/5.6/msvc2015_64/lib/cmake/Qt5
3. 在CMake GUI中选中 WITH_Eigen3、WITH_QGLViewer、WITH_ZLIB;然后configure一下,再配置:
(1)QGLVIEWER_INCLUDE_DIR为H:/dev/libQGLViewer-2.6.3
(2)EIGEN3_INCLUDE_DIR为 D:/eigen-eigen-b9cd8366d4e8;不是D:/eigen-eigen-b9cd8366d4e8/eigen,道理同boost
(3)配置zlib
4. 在CMake GUI中选中 WITH_Demos,不要选择WITH_examples,那个以后挨个来学习就好了,而且会大大增加编译时间和复杂度。
然后再Configure一下,看看有没有Error等。
如果愿意配置TBB的话,可以在此下载并解压即可;
然后,Genrate,并用VS2015打开CGAL.sln,并在vs2015的生成菜单中选择“生成解决方案”。编译大概二十分钟。
然后,找到 INSTALL,右击,生成就会安装到 C:\Program Files\CGAL中各种inlcude lib bin文件夹。
这样就可以在项目中正常使用CGAL的lib了;
二. 在自己的项目中应用CGAL库
自己创建一个win32命令行项目: CGAL HelloWorld:
注意 :
1. 有些项目需要在项目属性中配置boost和eigen,比如 VC++目录:包含目录:G:\dev\boost_1_60_0 和 D:\eigen-eigen-b9cd8366d4e8
2. 在用到Eigen3命名空间的项目,要在CPP原文件中加入宏CGAL_EIGEN3_ENABLED, 方式如下:
#define CGAL_EIGEN3_ENABLED
#include <CGAL/Surface_mesh_deformation.h>
3. 有些项目需要在项目属性中配置gmp的include和lib
三. 编译cgal demo的注意点
1. CIMG_INCLUDE_DIR 我也配置了,用解压后的文件夹配置,比如:H:\dev\CImg-2.0.5_pre092517
2. 在CMake中配置boost的lib文件,选中用带libboost***.lib的文件,比如 : H:\boost_1_60_0\lib64-msvc-14.0/libboost_filesystem-vc140-mt-1_60.lib
这个版本的编译在官方文档中有很多指导,但是依然有个别细节需要注意。
大概情况如下:
编译demo时,用太新的qt(比如qt5.8)会导致interface未定义错误。最后版本罗列如下:qt5.6msvc201564、boost 1.60 、libQGLViewer2.6.3、tbb64 201702...、 Eigen3 、
0. 官网下载CGAL-4.11-Setup.exe,这是一个解压源码的exe,里面并没有lib和dll,安装后需要进行下面的编译步骤。安装在比如G:\dev\CGAL-4.11-beta1。安装时不选html,官网文档很好用。
1. 使用CMake GUI,假设大家都很熟悉cmake的使用。
2. 有一个必备的第3方Lib列表需要安装,阅读官方文档会收获更多的信息:
8.1 Standard Template Library (STL)这个VS编译器中是有的,不用做什么事儿。
8.2 Boost 这个到官网下载Binary版:boost_1_60_0-msvc-14.0-64.exe(270多MB),安装在在比如H:\boost_1_60_0;
8.3 GMP and MPFR,这两个在CGAL的源码setup.exe中有下载选项,下载后在代码目录里含有。比如H:\dev\CGAL-4.11\auxiliary\gmp\lib
8.4 zlib,下载zip文件,解压,cmake之,然后生成项目,然后将INSTAL生成一下(既要Debug也要Release)。注意cmake中配置的install路径。配置CGAL的cmake时要找到它。D:\Program Files\zlib\lib
8.5 OpenGL :win10系统中一般默认含有这个,基本不用管。
8.6 Qt5,我用的是qt-opensource-windows-x86-msvc2015_64-5.6.0.exe不要用高版本的qt,因为互相依赖关系和qt新版本的interface有变化)。
8.7 libQGLViewer,
这是可选的,但最好也下载之,demo中要用,非常好的工具; 最好在官网下载libQGLViewer-2.6.3.zip或在此处下载,编译一下;用QT Creator打开H:\dev\libQGLViewer-2.6.3\QGLViewer\QGLViewer.pro,然后在Creator的菜单"构建"->执行qmake,然后->构建所有项目,这会导致debug和release同时被构建,要知道他们的路径,比如:H:\dev\libQGLViewer-2.6.3\QGLViewer
。
8.8 Eigen3, 最好也配置,很多项目要用它;这个不用编译,直接引用头文件的一个数学库。8.9 VTK自己手工编译的,安装在D:\Program Files\VTK\。配置CMake中的VTK_DIR为 D:\Program Files\VTK\lib\cmake\vtk-8.0
配置CMake GUI时需要注意:
1. Boost_INCLUDE_DIR是 H:/boost1.6.0;而不是H:/boost_1_65_1/boost。因为代码中都是#include <Boost/***.h>。CMakegui中选中CGAL_Boost_USE_STATICLIBS,并
2. Qt5_DIR 参考配置为D:/Qt/Qt5.6.0/5.6/msvc2015_64/lib/cmake/Qt5
3. 在CMake GUI中选中 WITH_Eigen3、WITH_QGLViewer、WITH_ZLIB;然后configure一下,再配置:
(1)QGLVIEWER_INCLUDE_DIR为H:/dev/libQGLViewer-2.6.3
(2)EIGEN3_INCLUDE_DIR为 D:/eigen-eigen-b9cd8366d4e8;不是D:/eigen-eigen-b9cd8366d4e8/eigen,道理同boost
(3)配置zlib
4. 在CMake GUI中选中 WITH_Demos,不要选择WITH_examples,那个以后挨个来学习就好了,而且会大大增加编译时间和复杂度。
然后再Configure一下,看看有没有Error等。
如果愿意配置TBB的话,可以在此下载并解压即可;
然后,Genrate,并用VS2015打开CGAL.sln,并在vs2015的生成菜单中选择“生成解决方案”。编译大概二十分钟。
然后,找到 INSTALL,右击,生成就会安装到 C:\Program Files\CGAL中各种inlcude lib bin文件夹。
这样就可以在项目中正常使用CGAL的lib了;
二. 在自己的项目中应用CGAL库
自己创建一个win32命令行项目: CGAL HelloWorld:
注意 :
1. 有些项目需要在项目属性中配置boost和eigen,比如 VC++目录:包含目录:G:\dev\boost_1_60_0 和 D:\eigen-eigen-b9cd8366d4e8
2. 在用到Eigen3命名空间的项目,要在CPP原文件中加入宏CGAL_EIGEN3_ENABLED, 方式如下:
#define CGAL_EIGEN3_ENABLED
#include <CGAL/Surface_mesh_deformation.h>
3. 有些项目需要在项目属性中配置gmp的include和lib
三. 编译cgal demo的注意点
1. CIMG_INCLUDE_DIR 我也配置了,用解压后的文件夹配置,比如:H:\dev\CImg-2.0.5_pre092517
2. 在CMake中配置boost的lib文件,选中用带libboost***.lib的文件,比如 : H:\boost_1_60_0\lib64-msvc-14.0/libboost_filesystem-vc140-mt-1_60.lib
相关文章推荐
- Win10 64bit +VS2015+GPU版本MXNet+Tensorflow 1.3.0的安装
- WIN10 VS2015 Cmake编译 opencv3.3 cuda9.0
- Win10与VS2015搭建内核驱动开发环境遇到的问题
- Win10 UWP开发系列:使用VS2015 Update2+ionic开发第一个Cordova App
- WIN10 + VS2015 + WDK10 + SDK10 + VM虚拟机驱动开发调试环境搭建
- vs2015 +wdk10 +WIN10 +VMWARE12 驱动开发环境搭建
- wireshark2.4.2 vs2015 源码编译及C语言插件开发总结
- Lua5.3.4 源码编译(win10、vs2015)
- win10 vs2015 wxWidgets编译
- win10系统VS2015编译ifcplusplus
- Win10下VS2015(WDK10)驱动开发环境配置
- dlib 01 dlib vs2015 编译 win10
- vs2015+win10搭开发环境
- 网狐荣耀--用vs2015编译时,DEP0100 : 请确保目标设备启用了开发人员模式
- Win10下VS2015(WDK10)驱动开发环境配置
- WIN10 QWT6.1.3+VS2015编译
- win10+VS2015编译Trinity源码全过程
- Win10年度更新开发必备:VS2015 Update 2正式版下载汇总
- Windows10 手机应用程序开发 - 1.安装VS2015 启动Win10 Mobile模拟器
- win10下的meshlab2016.12与vs2015的编译