cgal配置以及一些资料

Win7下VS2008编译CGAL3.9

(转:http://blog.youkuaiyun.com/wsh6759/article/details/6977847)

CGAL是比较经典的计算几何库,算法经典,稳定高效。

本文介绍编译CGAl情况,

前期准备:

BOOST:http://www.boost.org 下载boost_1_38_0.zip

Cmake:http://www.cmake.org/files/v2.8/cmake-2.8.2-win32-x86.exe

QT: 安装Qt(qt-win-opensource-4.5.0-vs2008.exe)

LibQGLviewer:http://www.libqglviewer.com/installWindows.html

CGAL: https://gforge.inria.fr/frs/?group_id=52 下载CGAL3.9即可。

前期编译:参考6编译boost,安装Qt4.5(不需SDK库),编译LibQGLviewer,这里不做详细说明,具体参考链接。

编译LibQGLviewer,在参考3下载源码,

QGLViewer的源文件,然后你会看到libQGLViewer/ libQGLViewer-2.3.10.pro,用vs2008的Qt助手打开这个文件(跟CMAKE同样的功能),编译QGLViewer,在vs2008下编译Debug和Release版本。

安装cgal3.9.exe,保持网络连接状态,需要下载安装gmp等库。

打开cmake-gui,配置cgal路径,需要指定boost、qt、QGLViewer等库路径。

点击Configure,等待若干秒,点击Generate

编译src、demo、examples代码时(主要是demo),二维显示用的是QT的图像框架,三维浏览是用了QT的第三方库QGLViewer,所以编译代码时,需要在相关选项中勾选。

如果出现gmp-vc90-mt-gd.lib找不到的问题,进入你把C:\CGAL-3.9\auxiliary\gmp\lib\中的 libgmp10.lib和对应的.dll改成gmp-vc90-gd并在VS依赖项中填上gmp-vc90-mt-gd.lib就可以解决问题。

Cmake中设置为debug版本,那么vs2008中也只能debug版本编译,如果不匹配(发布版本对发布版本,测试版本对测试版本),那么将 在命令行出现:"QWidget: Must construct a QApplication before a QPaintDevice"的问题,这个在编译使用Qgis时也遇到过。

注意编译的时候,留够足够空间,需要

耐心等待,编译成功,enjoy it!

Demo:

参考资料

1. CGAL(Computational Geometry Algorithms Library)主页 http://www.cgal.org/

2. 下载CGAL https://gforge.inria.fr/frs/?group_id=52

3. libqglviewer http://www.libqglviewer.com/installWindows.html

4. 简单介绍早期版本 http://www.math.tau.ac.il/~theoren/CGAL/

5. 斯坦福大学图形课介绍 http://graphics.stanford.edu/courses/cs368-00-spring/TA/manuals/CGAL/frameset/fsSTLex.html

6. 参考编译boost1.38 http://blog.youkuaiyun.com/augusdi/article/details/5971023

7. CGAL课程2004 http://www.loria.fr/~lazard/CGAL/2004/

8. 介绍三角网 http://blog.youkuaiyun.com/liujunzstu/article/details/2107631

9. VS2008安装CGAL3.4 http://blog.youkuaiyun.com/scarletty/article/details/4212703

10. VS2008安装CGAL3.8 http://www.qtsir.com/thread-2602-1-1.html

11. 安装CGAL3.7 http://blog.youkuaiyun.com/mnorst/article/details/6617465

12. VS2008 CGAL3.7安装 http://www.cnblogs.com/goryu/

13. CGAL3.8编译 http://www.qtcn.org/bbs/apps.php?q=diary&uid=111650&a=detail&did=52

14. 编译应用CGAL(点集的Delaunay三角剖分,voronoi图) http://www.cnblogs.com/sudoleo/archive/2010/07/20/1781617.html

15. CGAl安装 http://blog.youkuaiyun.com/yunzaitian163/article/details/6724725

16. Win7 安装CGAL http://blog.sina.com.cn/s/blog_6d68e6090100m6rc.html

17. VS2008安装与编译CGAL http://hi.baidu.com/ganwf85/blog/item/45483710fe67ced6c2fd7869.html

18. 编译CGAL步骤 http://hi.baidu.com/litterbug23/blog/item/9297ec216652bf7734a80f8d.html

19. VS2005编译CGAL支持库 http://hi.baidu.com/yhdzw_ming_cheng/blog/item/cb36d40beb403d1795ca6b7e.html

20. 生成CGAL计算凸包DLL http://blog.youkuaiyun.com/wrx_2009/article/details/4242685

<think>好的,用户想了解如何配置CGAL开发环境。我需要根据提供的引用资料整理出一个清晰的步骤指南。首先,我需要确认用户的操作系统,但问题中没有明确说明,所以可能需要覆盖Windows和Linux两种常见系统。 首先,引用1提到了在Windows下使用Visual C++配置CGAL,包括下载CGAL、安装GMP和MPFR,以及Boost的安装和环境变量设置。引用25补充了环境变量的配置,特别是Path和CGAL_DIR的设置。引用3详细说明了如何打开环境变量配置界面。引用4提到了在Linux下使用CMake配置CGAL,并关闭header-only模式。引用5还提到了项目属性中的库目录设置。 接下来,我需要将这些信息整合成结构化的步骤。可能分为Windows和Linux两个部分。每个部分应包括下载安装必要的库(如GMP、MPFR、Boost)、配置环境变量、项目设置等。需要注意引用来源的正确标注,例如在步骤中引用对应的引用编号。 还要检查是否有遗漏的步骤,比如编译测试代码或验证安装是否成功。用户可能希望看到具体的命令行操作或图形界面操作指导。此外,需要确保LaTeX格式正确,数学表达式用$...$,独立公式用$$...$$,但当前问题可能不需要数学公式,但需要遵循系统级指令中的格式要求。 最后,生成相关问题,考虑用户可能的后续疑问,比如依赖项安装失败如何处理,如何验证环境是否配置成功,以及不同IDE的配置差异等。需要确保问题与配置过程相关,并且能够帮助用户深入理解。 现在需要组织这些内容,确保步骤清晰,引用正确,语言简洁,符合中文回答要求,并生成相关问题。</think>### CGAL开发环境配置指南 #### **Windows系统配置步骤** 1. **安装依赖库** - 下载GMP/MPFR库(推荐预编译版本),存放至`C:\CGAL\gmp` - 安装Boost库,建议使用vcpkg或官方二进制包[^1][^2] 2. **配置环境变量** - 添加GMP库路径到系统Path:`C:\CGAL\gmp\lib` - 新增环境变量`CGAL_DIR`指向CGAL根目录(如`C:\CGAL\CGAL`)[^3] 3. **Visual Studio项目设置** - 在项目属性中设置包含目录:添加CGAL头文件路径、Boost和GMP的include目录 - 配置库目录:指向GMP的lib路径(如`C:\CGAL\gmp\lib`)[^5] #### **Linux系统配置步骤** 1. **编译安装依赖库** ```bash sudo apt-get install libgmp-dev libmpfr-dev libboost-all-dev ``` 2. **源码编译CGAL** ```bash mkdir build && cd build cmake -DCGAL_HEADER_ONLY=OFF -DCMAKE_BUILD_TYPE=Release .. make sudo make install ``` 通过`-DCGAL_HEADER_ONLY=OFF`关闭仅头文件模式[^4] #### **验证安装** 创建测试文件`test.cpp`: ```cpp #include <CGAL/Simple_cartesian.h> int main() { CGAL::Simple_cartesian<double>::Point_2 p(1.0, 2.0); return 0; } ``` 编译命令: ```bash g++ test.cpp -o test -lCGAL -lmpfr -lgmp ``` ### **常见问题解决** - **环境变量失效**:重启IDE或终端使配置生效[^3] - **链接错误**:检查Boost库版本是否匹配(需≥1.66)[^1] - **头文件缺失**:确认CMakeLists.txt中`include_directories`包含CGAL路径[^4]
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值