MingW跨平台编译QT VTK

本文介绍了一名研究生如何在Ubuntu环境下开发C++、QT和VTK项目,并在面对Windows可执行程序需求时,通过MingW编译Qt和VTK源码以实现跨平台。文章详细记录了编译过程,包括设置环境、修改配置、编译选项和解决依赖问题,旨在帮助读者避免重复踩坑。
摘要由CSDN通过智能技术生成

本人是小研究生一枚,在实验室负责跟通用公司合作的一个关于CAD的项目, 在项目中用到的开发环境是, C++, QT ,VTK. C++, Cmake, Emacs, SVN用来实现算法, QT实现用户交互, VTK实现可视化。Cmake用来组织工程 Emacs编译器(初始的时候是个文本编辑器,需要进行一些配置安装一些插件网上有许多的教程),SVN负责版本控制,用于团队开发的时候版本的控制(其实也没有涉及到团队,整个工程都是我一个人在开发),但是用svn还是比较方便的,你不用担心因为你的某些修改导致工程无法运行,你就可能要花费大量的时间找出bug。用svn管理后你如果觉得错误很难找到,完全可以恢复到之前某个稳定正确的版本上,非常省心。

在开发阶段是在ubuntu下进行的,因为ubuntu下用用第三方的库比较方便简单。在软件源上安装完即可以使用。而且本人不喜欢windows的 vs系列编译器 因为不同版本的vs会有不同的动态运行库(很蛋疼),相信不少人都遇到过类似的情况。所以我更追求一个可以完全跨平台的工程组织工具,编译器,第三方库。上面提到的那些东西都是跨平台的。 

追求跨平台说起来很容易,但是做起来确实有些头疼。项目到了阶段性验收的时候,对方要求windows的可执行程序。所以我也是被逼无奈的要编译出一个Windows的release版本的可执行程序。关于Debug和Release版本的程序相信大家应该都是很清楚的。这里就不再班门弄斧了。下面就开始我的编译旅程吧。

在编译的过程中走过很多的弯路,简单的说一下,以免大家重蹈覆辙, 我一心想要快速的搞定这件事情,所以一开始就是对编译qt和vtk的源码很抵触。所以从qt官网上下载了一个release(用MingW编译的) ,然后我试图在VTK观望上找到我想要的release 但是发现失败了,不是使用的Mingw版本不同,就是没有64bit的。VTK编译的时候是学要qt库要生成一个叫做libqvtk的库,所以这条路宣告失败其实是当我用下载下来的qt库编译VTK后在编译我的工程后,发现可执行程序无法运行后,痛定思痛才觉得可能是一这两个库使用的编译器版本不一样导致的错误。

所以,这次下定决心从头再来,这次我没有对以后的ku报任何幻想,我决定QT,VTK的库自己用MingW32-w64编译。让所有的东西都在掌控之中。不依赖于别的东西。 首先,你需要下载并安装MingW-64位的release版本,需要在http://qt-project.org/downloads下载QT源码。我下载的是4.8.4版本。下载后的目录结构:
下载后安装好的目录结构为(假设安装到D:\QT):
├─share
├─lib
├─bin
├─mingw
└─qt
    ├─translations(QT语言文件目录)
    ├─tools(QT相关工具源码目录)
    ├─src(源代码目录)
    ├─qmake(qmake源代码目录)
    ├─plugins(图形,数据库等插件目录)
    ├─mkspecs(平台

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值