meshlab源代码编译(一)_vs2013

来源:互联网 发布:安卓 源码加密 混淆 编辑:程序博客网 时间:2024/05/22 08:06

meshlab配置相关的一些资料(http://www.boyunjian.com/v/softd/MeshLab.html)可以参考一下,不过有些有问题。
我以“meshlab_32bit v_1.3.3”为例,利用它的源代码“MeshLabSrc_AllInc_v133.tgz”详细给出编译过程。
因为meshlab源代码是使用QT编写的,所以有必要先说一下QT,我使用的是“qt-opensource-windows-x86-msvc2013_opengl-5.4.0”,注意是支持OpenGL的,且连接到32位VS2013上(msvc2013)。相匹配的我使用的VS是32位的。为了将QT与VS2013连接起来还需要一个插件:“qt-vs-addin-1.2.3-opensource”。
下面说一下QT与VS2013的连接过程,先安装好QT和VS2013,在安装上面那个插件,之后打开VS2013在菜单栏有一项:“QT5”,点击其下拉菜单中的“Qt Options”进入下面对话框。
这里写图片描述
如图所示,加入“Qt Versions”信息:
这里写图片描述
(我将QT安装在“D:\QT-VS”)
设置环境变量,控制面板-系统-高级系统设置中的“环境变量”,进入下面对话框。
这里写图片描述
添加两个用户变量,
这里写图片描述
这里写图片描述
重启电脑后才有效。
下面说一下meshlab配置过程,打开VS点击“QT5-Open Qt Project File(.pro)”,选中“E:\MeshLabSrc_AllInc_v133\meshlab\src\common”下的common.pro,进入工程common的属性页,将“配置属性-常规-属性默认值”下的“配置类型”改为“静态库(.lib)”。meshlab的其他工程需要common.lib。再生成工程common,在“E:\MeshLabSrc_AllInc_v133\meshlab\src\common\Debug”下会有common.lib文件,将其复制到“E:\MeshLabSrc_AllInc_v133\meshlab\src\distrib”。
打开“E:\MeshLabSrc_AllInc_v133\meshlab\src\external”下的external.pro,生成工程“jhead”会在“E:\MeshLabSrc_AllInc_v133\meshlab\src\external\jhead-2.95\debug”下有“jhead.lib”,将其复制到“E:\MeshLabSrc_AllInc_v133\meshlab\src\distrib”。
进入工程“muparser”下的“muParserBytecode.cpp”,在文件前面加入“#include”。 保存更改。
关闭VS,重新打开VS依次打开工程:“E:\MeshLabSrc_AllInc_v133\meshlab\src\external\external.pro”,“E:\MeshLabSrc_AllInc_v133\meshlab\src\common\common.pro”,“E:\MeshLabSrc_AllInc_v133\meshlab\src\meshlab\meshalb.pro”,“E:\MeshLabSrc_AllInc_v133\meshlab\src\meshlabplugins\io_base\io_base.pro”,“E:\MeshLabSrc_AllInc_v133\meshlab\src\meshlabplugins\filter_meshing\filter_meshing.pro”。
进入工程“openctm”的属性页,选中“C/C++ - 预处理器”,在预处理器定义中添加一项:OPENCTM_BUILD
这里写图片描述
进入工程“common”的属性页,选中“链接器-常规”,在附加库目录中加入“E:\MeshLabSrc_AllInc_v133\meshlab\src\distrib”,再选中“链接器-命令行”,键入“/SAFESEH:NO”。点击“应用”。
进入工程“filter_meshing”属性页,选中“链接器-常规”,在附加库目录中加入“E:\MeshLabSrc_AllInc_v133\meshlab\src\distrib”,再选中“链接器-命令行”,键入“/SAFESEH:NO”和“common.lib”。点击“应用”。
进入工程“io_base”属性页,选中“链接器-常规”,在附加库目录中加入“E:\MeshLabSrc_AllInc_v133\meshlab\src\distrib”,再选中“链接器-命令行”,键入“/SAFESEH:NO”和“common.lib”。点击“应用”。
进入工程“meshlab”属性页,选中“链接器-常规”,在附加库目录中加入“E:\MeshLabSrc_AllInc_v133\meshlab\src\distrib”,再选中“链接器-命令行”,键入“/SAFESEH:NO”“jhead.lib”和“common.lib”。点击“应用”。再将工程meshlab设为启动项
并将项目依赖项顺序设置为:b-m-l-s-o-j-l-c-i-f,(下面图中各项的首字母)
这里写图片描述
这样就完成了meshlab的基础部分的配置,下面生成meshlab,得到
这里写图片描述
meshlab运行需要一些dll文件,如下:
这里写图片描述
这样就完成了meshlab_mini所包含的部分的编译。

0 0
原创粉丝点击