前一篇文章写了CMake,这一篇文章继续编译,这里只介绍我编译过程中出现的问题以及解决办法介绍。
1.设置ALL_BUILD批生成:生成——》批生成,将Debug与Release模式勾选上,选择生成;这个过程如果成功将近3个小时!
2. 可惜进行到一半还是出现了错误,这个文件实在unix系统才会需要的:
解决办法就是在VS2013的安装目录下:…/VS/include下添加unistd.h文件:
#ifndef _UNISTD_H
#define _UNISTD_H
#include <io.h>
#include <process.h>
#endif /* _UNISTD_H */
3.重新生成,这次就顺利成功了!(忘记截图了,生成500多个成功~)
4.将编译完的bin目录添加到环境变量中去,运行命令osgversion,显示3.4.0;但是运行osgviewer cow.osg却没有显示那头牛,主要是因为bin下缺少zlib.dll,可以从你的第三方库路径下找到该dll:F:\code\osg\vs2013Update5\3rdParty_x86_x64\x64\bin
(缺少其他dll也可以去那里找到~)
5.至此编译完成!还算顺利~~~下一篇将要开始尝试Qt结合osg~
勘误:
补充说明,上面的编译过程是可以顺利通过的,但是在运行Qt的例子osgviewerQt.exe的时候会出现ot20-OpenThreads.dll崩溃的情形!我在debug模式下调试运行没有问题,但是单独运行exe就会崩溃!
解决办法: 在上一篇文章之中
CMake OSG+VS2013+Qt5.7.0讲到的编译过程中配置qt的内容都是正确的,但是唯独不能在cmake的时候选择勾选BUILD_OPENTHREADS_WITH_QT!!!
最后在重新cmake编译之后,可以将osgviewerQt.exe例子运行!
ps:其他问题
编译osgviewerQt工程时出现无法打开包括文件:QGLWidget
:
网上很多资料说的都是在QtCreator的解决方法,在VS中,我右键工程——》选择Qt Project Settings——》Qt Modules,勾选上OpenGL
补充
最近尝试在osg中编译dae格式读取的插件,但是COLLADA一直编译不过去,一直提示没有ColladaDOM141的lib;
确实是没有这个lib,但是不是引进了新版本么?collada-dom2.4-dp-vc120-mt.lib
,我引入的库是这个,所以脑阔疼。。。