您的位置:首页 > 其它

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,不然快忘掉了。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: