igllib的安装
2015-10-24 00:14
585 查看
最早跟igl的关系居然是原先读过它的一篇Laplacian Surface Editing并且做出来了,对其有一定的好感,原因是它是开源的。所以当他推出igl library库的时候,我是紧抱大腿向他靠其啊,谁叫他在爱因斯坦的母校。弄这个东西快花了我一周的时间,因为它本身是在LINUX环境下GCC编译器中进行的,所以想在windows上的vs里面使用还真得费一番功夫,为了支持更好的支持C++标准,我这里使用了VS2015
好了废话,不多说,开始正题吧!
一、下载igllib
去GitHub吧,https://github.com/libigl/libigl/
然后Clone in Desktop,下个客户端把其克隆到本地电脑的某个地方。
这里我克隆的地址为:D:\work_files
二、cmake其下的tutorial
打开cmake(什么?不知道是什么,自己先去下个,我开始也不知道是什么)
source code: D:/work_files/libigl/tutorial
build the binaries: D:/work_files/libigl/tutorial/build
然后config,config的时候注意选择自己的VS版本,我这里是VS2015,就选“Vistual Studio 14 2015”
config好后,就generate
应读者要求,现把CMAKE的配置界面截图出来:
如果这里配置出错,很有可能是由于找不到依赖库都造成的,因为通过Download ZIP下载下来的话,里面的文件会不全,所以最好用github客户端克隆出来.
三、编译tutorial
1、打开D:\work_files\libigl\tutorial\build\libigl_tutorials.sln
2、打开configuration manager,将102到705的项目的勾全去掉(节约时间=。=!)
3、然后就开始编译吧(等待错误的发生0,0),编完了长这样(实在不能再懒了,发张图吧)
错误提示长这样:
10>D:\work_files\libigl\external\nanogui\include\nanogui/label.h(42): error C2719: 'color': formal parameter with requested alignment of 16 won't be aligned (compiling source file D:\work_files\libigl\external\nanogui\src\layout.cpp)
10> popup.cpp
10>D:\work_files\libigl\external\nanogui\include\nanogui/label.h(42): error C2719: 'color': formal parameter with requested alignment of 16 won't be aligned (compiling source file D:\work_files\libigl\external\nanogui\src\label.cpp)
好像是什么对齐的关系,不要慌,跟着我来改错
4、开始改错,在Solution Explorer中右键点击nanogui项目,然后properties->configuration properties->c/c++->Preprocessor
在Preprocessor Definitions加入 EIGEN_DONT_ALIGN
同样的方法应用在101_FileIO_bin项目中,然后继续编译(继续等出错-,-!)
错误出来了,长这样
Severity Code
Description ProjectFile
Line
Error LNK2026
module unsafe for SAFESEH image. 101_FileIO_binD:\work_files\libigl\tutorial\build\101_FileIO\opengl32.lib(OPENGL32.dll)1
5、继续改错,右击101项目properties->configuration properties->Linker->Advanced
把最后一项,Image Has Safe Exception Handlers 改成 No,继续编,
然后会提示你,系统找不到ALL_BUILD什么之类的,这个时候你就成功了。
6、把101设成启动项,你就可以运行了(什么?你不会设启动项?问老师去)
7、其实101很好弄出来,卡到我是102项目,那么怎么弄呢,原理一样,首先打开Configuration manager,把101去掉,把102勾上
同样的方法进行改错,然后设为启动项,开编
有个小错误,模型找不到,我们多加个在前面多加个../,把路径改成这样:"../../shared/cube.off",然后再重新编译下
duang!~
好吧,教程结束,马上写第二篇如何脱离tutorial使用igllib,不然快忘掉了。
好了废话,不多说,开始正题吧!
一、下载igllib
去GitHub吧,https://github.com/libigl/libigl/
然后Clone in Desktop,下个客户端把其克隆到本地电脑的某个地方。
这里我克隆的地址为:D:\work_files
二、cmake其下的tutorial
打开cmake(什么?不知道是什么,自己先去下个,我开始也不知道是什么)
source code: D:/work_files/libigl/tutorial
build the binaries: D:/work_files/libigl/tutorial/build
然后config,config的时候注意选择自己的VS版本,我这里是VS2015,就选“Vistual Studio 14 2015”
config好后,就generate
应读者要求,现把CMAKE的配置界面截图出来:
如果这里配置出错,很有可能是由于找不到依赖库都造成的,因为通过Download ZIP下载下来的话,里面的文件会不全,所以最好用github客户端克隆出来.
三、编译tutorial
1、打开D:\work_files\libigl\tutorial\build\libigl_tutorials.sln
2、打开configuration manager,将102到705的项目的勾全去掉(节约时间=。=!)
3、然后就开始编译吧(等待错误的发生0,0),编完了长这样(实在不能再懒了,发张图吧)
错误提示长这样:
10>D:\work_files\libigl\external\nanogui\include\nanogui/label.h(42): error C2719: 'color': formal parameter with requested alignment of 16 won't be aligned (compiling source file D:\work_files\libigl\external\nanogui\src\layout.cpp)
10> popup.cpp
10>D:\work_files\libigl\external\nanogui\include\nanogui/label.h(42): error C2719: 'color': formal parameter with requested alignment of 16 won't be aligned (compiling source file D:\work_files\libigl\external\nanogui\src\label.cpp)
好像是什么对齐的关系,不要慌,跟着我来改错
4、开始改错,在Solution Explorer中右键点击nanogui项目,然后properties->configuration properties->c/c++->Preprocessor
在Preprocessor Definitions加入 EIGEN_DONT_ALIGN
同样的方法应用在101_FileIO_bin项目中,然后继续编译(继续等出错-,-!)
错误出来了,长这样
Severity Code
Description ProjectFile
Line
Error LNK2026
module unsafe for SAFESEH image. 101_FileIO_binD:\work_files\libigl\tutorial\build\101_FileIO\opengl32.lib(OPENGL32.dll)1
5、继续改错,右击101项目properties->configuration properties->Linker->Advanced
把最后一项,Image Has Safe Exception Handlers 改成 No,继续编,
然后会提示你,系统找不到ALL_BUILD什么之类的,这个时候你就成功了。
6、把101设成启动项,你就可以运行了(什么?你不会设启动项?问老师去)
7、其实101很好弄出来,卡到我是102项目,那么怎么弄呢,原理一样,首先打开Configuration manager,把101去掉,把102勾上
同样的方法进行改错,然后设为启动项,开编
有个小错误,模型找不到,我们多加个在前面多加个../,把路径改成这样:"../../shared/cube.off",然后再重新编译下
duang!~
好吧,教程结束,马上写第二篇如何脱离tutorial使用igllib,不然快忘掉了。
相关文章推荐
- 三个数找最大 2.0
- unity3d开发flappy bird之背景设计(一)
- JS中取整以及随机颜色问题
- HDU 5029 Relief grain (树链剖分 + 线段树)
- java equals方法和==操作符的不同
- SSH Key生成及配置
- 10个月产品演化之路-快速试错,快速反应,探索产品成功之道
- 10个月产品演化之路-快速试错,快速反应,探索产品成功之道
- APK反编译二次打包实例-修改apk文字和图片
- 字符串列表的使用
- SQLServer2008/2005 生成数据字典SQL语句
- fields must be fully assigned before control is returned to the caller解决方案
- [leetcode151] Reverse Words in a String
- 1017. A除以B (20)
- APK反编译二次打包实例-消除apk底部广告
- 如果我来应聘产品经理岗位(一)
- HDU 2446 Shell Pyramid
- HDU 1009 FatMouse' Trade
- C语言位运算
- 浅谈UDP(数据包长度,收包能力,丢包及进程结构选择)