VS2019+Qt5.14(VS2017+Qt5.12)编译meshlab2016源码(理论上任意版本按我的操作都行)

由于最近课题需要编译meshlab源码,在网上看了一圈教程都是零零散散的或者含糊不清的,故写此文章分享自己的经验给需要帮助的人,这绝对是全网最详细且经过我多次实践没有任何问题的,如果按照我的步骤还有问题,答应我请务必换台电脑试试。

Tip 开始之前我先给点建议,理论上任意版本的VS+任意版本的Qt都可以,我自己试了VS2019+Qt5.14和VS2017+Qt5.12是没问题的。下面我们进入正题,慢慢干货,控制车速跟我上路~

1. 安装Qt和VS

这一步我就不太想多讲了,我想大家都开始编译源码了安装软件这块就不用教了吧,需要注意的是Qt组件
最好选择64位的,如(msvc 2017 64),且要选Qt Script这个组件不然后续编译会报错,然后记住自己安装Qt的路径后面会用。我的Qt安装组件如下:
Qt组件图

2 下载meshlab并配置VS+Qt

2.1. 下载文件

meshlab2016源码的编译依赖vcglib这个库所以自行下载两个文件,网上到处都是就不提供了,两个文件放在一个路径下,如下所示:
路径图

2.2. VS配置Qt

打开VS,找到拓展(某些版本好像叫拓展与更新)-》管理拓展-》联机;右上角搜索Qt,会出现Qt Visual Studio Tool下载然后重启VS就会自动在顶部工具栏中添加Qt Tool。
下载Qt Tool
在这里插入图片描述
然后点开Qt VS Tool-》Qt Version(某些版本叫version),这里面添加Qt的编译器,点击添加找到你装Qt的路径找到bin目录下的qmake(某些低版本VS只需找到bin目录路径即可),这样我们的IDE就配置好了。
在这里插入图片描述

3.编译源码

3.1编译静态库

找到顶部菜单栏Qt VS Tool->Open Qt Project File 打开你下载的meshlab2016下的src/common/common.pro;会弹出框选是就行。

打开文件
在解决方案下面右键common点属性进入common属性页,在配置属性常规中改为静态库,然后点生成,就会成功在src/common/debug下面生成common.lib,将common.lib复制到src/distrib/下

在这里插入图片描述
在这里插入图片描述
然后重复上述步骤在顶部栏Qt VS Tool->Open Qt Project File 打开src/eternal下面的eternal.pro,会出现以下7个项目
在这里插入图片描述
这里我们需要生成这7个项目的目标静态库,右键openctm点击属性-》C/C+±》预处理器-》预处理器定义添加OPENCTM_BUILD,然后选取所有项目生成选定内容,至此所有需要的静态库生成完毕,在eternal文件下找到这7个项目每个里面的debug目录会生成对应的静态库lib文件,同上述common.lib类似,都复制到src/distrib/目录下,加上common一共8个。(注意muparser在eternal下有很多个版本的文件夹,我的是在muparser_225这个下面src/debug里面;你们可以根据文件生成时间找)
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

3.2 配置meshlab

同上述打开pro文件同样的操作打开src下面的meshlab_mini.pro,会有以下5个文件。
在这里插入图片描述

3.2.1 配置common

右键打开common属性(注意这里配置属性->常规里面就是动态库,不需要像前面改成静态库),配置属性-》VC++目录-》库目录,添加刚才我们存放lib的distrib路径,点击应用,然后点击链接器-》输入-》附加依赖项,添加glu32.lib;opengl32.lib;点击应用,再点击链接器-》命令行,输入/SAFESEH:NO ,点击应用确定,然后生成common就成功生成common了。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

3.2.2 配置filter_meshing,io_base,io_collada

这三个配置一模一样,所以我只展示filter_meshing,另外两个跟着一样操作就行。
右键filter_meshing属性,VC++目录-》库目录,添加distrib的路径,点击应用,然后点击链接器-》输入-》附加依赖项,添加glu32.lib;opengl32.lib;点击应用,再点击链接器-》命令行,输入/SAFESEH:NO common.lib,点击应用确定,这两步和common一样,然后生成filter_meshing就成功生成了。另外两个项目操作和filter一样,自己按同样步骤生成即可。

在这里插入图片描述

3.3 meshlab配置编译

右键meshlab属性,vc++目录-》库目录,添加distrib/路径;然后点击链接器-》输入-》附加依赖项,添加glu32.lib;opengl32.lib;点击应用,再点击链接器-》命令行,输入/SAFESEH:NO jhead.lib common.lib;点击应用确定。在这里插入图片描述
右键meshlab设为启动项目(成功后meshlab会加粗),然后生成,生成成功后ctrl+f5运行或者点上方绿色小三角运行就成功啦!拍拍手给自己点个赞吧~~
在这里插入图片描述

看到这里是不是觉得泰裤辣,创作不易动动你的小手点赞收藏吧,谢谢各位看官老爷了~

  • 5
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值