2011年11月1号 11月2号 11月3号cgal的悲惨安装经历
Xp操作系统 +vs2008
安装成功的版本 cmake-2.8.6的安装包 boost_1_47Windows下的安装包 cgal-3.9的安装包 qt-win-opensource-4.6.3-vs2008.exe和 qt-vs-addin-1.1.6.exe
我全部都是下载的安装包,
1安装cmake 加cmake的安装路径\bin到环境变量path
2 然后boost,boost在线安装很麻烦,至少半个小时。
新建一个环境变量BOOST_ROOT= C:\boost_1_47 再加C:\boost_1_47\bin到path中
3 安装 qt
qt-win-opensource-4.6.3-vs2008.exe和 qt-vs-addin-1.1.6.exe
新建一个环境变量QTDIR= C:\Qt\4.6.3 加C:\Qt\4.6.3\bin到path
4安装cgal
CGAL_DIR= C:\CGAL-3.9 再加路径到path中
最后环境变量path有这些
C:\boost_1_47\bin;C:\ProgramFiles\CMake 2.8\bin;C:\Qt\4.6.3\bin;C:\CGAL-3.9\auxiliary\gmp\lib
Cgal的安装过程很多网页都有 我主要参考这个网页http://blog.csdn.net/mnorst/article/details/6617465
安装CGAL-3.9的详细步骤
1,安装CGAL-3.9-Setup.exe,此过程要保持网络连接,安装程序会下载GMP和MPFR预编译库。安装过程勾选全部的环境变量设置还有taucs库和manual一样最好勾上;
2,运行cmake软件
3,点击configure选择编译器:Visual Studio9 2008,其他默认,
如果需要使用CGAL中的demo和examples,建议勾选WITH_demos和WITH_examples,
否则使用demo和examples会需要自己设置工程环境
4 cmake运行界面如下
5,再次点击configure,程序开始对CGAL-3.9进行配置,如无错误,CMake会提示Configuringdone,Generate按钮变为可用
6,点击Generate按钮,会在CGAL-3.9目录下生成VS2008解决方案,如无错误,CMake会提示Generating done
7,关闭CMake
8,打开CGAL.sln
9,重新生成ALL_BUILD工程,编译完成后CGAL-3.9目录下会生成lib目录,存放所生成的库文件
CGAL安装验证
1,配置VS2008
1)添加头文件路径:工具-选项-项目和解决方案-包含文件
C:\Qt\4.7.3\include
xx\CGAL-3.7\auxiliary\gmp\include
xx \boost_1_47_0
xx\CGAL-3.7\include
2)添加库文件路径:工具-选项-项目和解决方案-库文件
xxQt\4.7.3\lib
xxCGAL-3.7\auxiliary\gmp\lib
xxCGAL-3.7\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.libC:\Qt\4.7.3\lib\QtGuid4.lib C:\Qt\4.7.3\lib\QtCored4.lib
(此处最恶心 在我的机器上要附加库QtOpenGLd4.lib(特别是这个,没有任何提示)
还有这个CGAL_Qt4-vc90-mt.lib)
3)添加代码
view plainprint?
1. #include <iostream>
2. #include <boost/format.hpp>
3. #include <QtGui>
4. #include <CGAL/Qt/GraphicsViewNavigation.h>
5. #include <QLineF>
6. #include <QRectF>
7. int main(int argc, char **argv)
8. {
9. QApplication app(argc, argv);
10. QGraphicsScene scene;
11. scene.setSceneRect(0,0, 100, 100);
12. scene.addRect(QRectF(0,0, 100, 100), QPen(QColor(255,0,0)));
13. scene.addLine(QLineF(0,0, 100, 100));
14. scene.addLine(QLineF(0,100, 100, 0));
15. QGraphicsView* view = new QGraphicsView(&scene);
16. CGAL::Qt::GraphicsViewNavigation navigation;
17. view->installEventFilter(&navigation);
18. view->viewport()->installEventFilter(&navigation);
19. view->setRenderHint(QPainter::Antialiasing);
20. view->show();
21. return app.exec();
22. }
还有以下几个主要参考网页:
http://blog.sina.com.cn/s/blog_6d68e6090100m6rc.html
http://hi.baidu.com/ganwf85/blog/item/45483710fe67ced6c2fd7869.html
http://www.cnblogs.com/sudoleo/archive/2010/07/16/1778524.html
http://hi.baidu.com/shareshow/blog/item/1b1f5bee002c97efb2fb95ba.html
http://qimo601.iteye.com/blog/781566
代码老出现这样的问题的解决方案!
找不到"mgp-vc90-mt-gd.lib"
你把:\CGAL-3.9\auxiliary\gmp\lib\中的libgmp10.lib和libgmp-10.dll改成gmp-vc90-mt-gd.dll和gmp-vc90-mt-gd.lib并在VS依赖项中填上gmp-vc90-mt-gd.lib就可以了
找不到“mpfr-vc90-mt-gd.lib”
你把:\CGAL-3.9\auxiliary\gmp\lib\中的libmpfr-4.dll和libmpfr-4.lib改成mpfr-vc90-mt-gd.dll和mpfr-vc90-mt-gd.lib并在VS依赖项中填上mpfr-vc90-mt-gd.lib就可以了