igllib的安装

最早跟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的配置界面截图出来:

igllib的安装_第1张图片


如果这里配置出错,很有可能是由于找不到依赖库都造成的,因为通过Download ZIP下载下来的话,里面的文件会不全,所以最好用github客户端克隆出来.


三、编译tutorial

1、打开D:\work_files\libigl\tutorial\build\libigl_tutorials.sln

2、打开configuration manager,将102到705的项目的勾全去掉(节约时间=。=!)

3、然后就开始编译吧(等待错误的发生0,0),编完了长这样(实在不能再懒了,发张图吧)

igllib的安装_第2张图片

错误提示长这样:

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!~

igllib的安装_第3张图片

好吧,教程结束,马上写第二篇如何脱离tutorial使用igllib,不然快忘掉了。

你可能感兴趣的:(igllib的安装)