为什么写这篇博客 ?
经过2天的捣腾, 网上关于MXE的安装教程是非常少的. 可能大家都更习惯在windows下安装QT creator , 所以用MXE的人并不是非常多, 导致安装教程也比较少.
我是一个Linux重度使用者, 我觉得Linux下搭建开发环境和安装编译器非常方便.
网上大部分的安装方式都是基于源代码编译安装, 这种方式非常耗时间, 没有必要. 我们绝大多数使用的Linux开发环境都是Ubuntu, 所以这期教程我就出一个基于Ubuntu的安装教程. 直接使用apt命令来进行安装.
1. MXE是什么?
MXE(M cross environment)是一个GNU Makefile,用于编译交叉编译器并交叉编译许多免费库,例如SDL和Qt。因此,它为各种目标平台提供了一个不错的交叉编译环境。
- 设计用于 在任何Unix系统上运行
2. MXE有什么用?
在Linux系统上交叉编译windows平台的应用程序。
3. MXE项目地址
项目主页:https://github.com/mxe/mxe
项目官网:https://mxe.cc/
4. 在Ubuntu20.04上安装MXE
从二进制发行版安装MXE
1. 安装依赖
sudo apt update && \
sudo apt install \
software-properties-common \
lsb-release
2. 添加和刷新MXE存储库
sudo apt-key adv \
--keyserver keyserver.ubuntu.com \
--recv-keys 86B72ED9 && \
sudo add-apt-repository \
"deb [arch=amd64] https://pkg.mxe.cc/repos/apt `lsb_release -sc` main" && \
sudo apt-get update
3. 安装基本的交叉编译器
sudo apt-get install \
mxe-{i686,x86-64}-w64-mingw32.{static,shared}-cc
4. 安装qt5交叉编译器
sudo apt-get install \
mxe-{i686,x86-64}-w64-mingw32.{static,shared}-qt5
5. 设置环境变量
安装好之后 , MXE默认放在/usr/lib/目录下 , 如图 :
然后就要去设置全局环境变量 :
sudo vim /etc/profile
# 在文件末尾新行添加: export PATH=$PATH:/usr/lib/mxe/usr/bin
# 保存退出
source /etc/profile # 使环境变量生效
6. 编译工程
MXE安装好之后就可以开始编译工程了
#i686架构:
/usr/lib/mxe/usr/i686-w64-mingw32.static/qt5/bin/qmake 项目文件,比如doge.pro
#x86-64架构:
/usr/lib/mxe/usr/x86-64-w64-mingw32.static/qt5/bin/qmake 项目文件,比如doge.pro
#把上面指令中的/usr/lib/mxe/替换成你的mxe安装路径(环境变量配置里加粗的部分),如果你的IDE是Qt 4.x的话把qt5换成qt
# 利用mxe的qmake生成Makefile后就可以执行make命令了
make
#不管哪个架构最后都要make
6. 找到可执行文件
Make 完成后程序会放在 release 目录下.