另辟蹊径-利用MSYS2安装MinGW+Qt开发环境(含32位-64位-动态库-静态库-qwt-opencv等等)
医疗纠纷总结-
另辟蹊径
-
利用
MSY
S2
安装
MinGW+Qt
开发环境<
/p>
(含
32
位<
/p>
-64
位
-
动态
库
-
静态库
-qwt-
opencv
等等)
By
Winland, 2015.04.04
本文介绍在
p>
Windows
系统里
MSYS2
环境和
MinGW-w64
编译套件安装、
Qt
开发环境安装。
一、
MSYS2
及其安装使用
1
、
MSYS2
介绍
这得从
MinGW
和
MSYS
说起,原本
GNU
工具只在
Linux/Unix
系统里才有,随着
Windows
系统的广泛使用,
为了在
Windows
系统里可以使用
GNU
工具,诞生了
MinGW
(
Minimalist
GNU for Windows
)
项目,利用
MinGW
就可以生成
Windows
里面的
exe
程序
和
dll
链接库。
MinGW
只是编译工具集没有类似
Unix
命令行环境,
所以为了进一步在
Windows
系统
上使用类
Unix
环境,
MinGW<
/p>
项目组衍生了
MSYS
子项目,该项目从
Cygwin
派生,构造
了一个类
p>
Unix
命令行环境,并提供
POSIX<
/p>
功能支持。
MinGW
本身仅支持生成
32
位程序,而
MinGW-w64
项目相当于是
MinGW
的升级版,同
时支持生成
32
位和
64
位程序。
MSYS2
也是
MSYS
的衍生版,使用
< br>MinGW-w64
编译工具集。
另外
< br>MSYS2
还有一个非常强大的功能,
它从
Arch Linux
引入了软件包管理器
pacm
an
工具,
使
得
MSYS2
功能扩展非常方便,并且可以通过
pacman<
/p>
来解决各个软件和库之间的依赖关系,自
动安装需要的依赖软件包
。
MSYS2
项目还打包了非常多的
开发库和开发工具,
能移植到
Windows
< br>上的估计都打包了,
而且还可以进行扩展。因此通过
MS
YS2
的
pacman
工具安装诸如<
/p>
MinGW-w64
编译工具集、
Qt<
/p>
开发库和
QtCreator
、
qwt
绘图插件、
opencv
开发库、
ffmpeg
、
gs
treamer
、
openssl
、<
/p>
sqlite
、
postgresql<
/p>
、
gtk
、
cr
ypto++
、
mesa
、
openal
、
tcl/tk
、
vlc
、
zlib
、
SDL
等,都是易如反掌。对于
< br>python
、
perl
、
p>
ruby
、
lua
脚本环境,
git
、
mercurial
、
cvs
等版本控制软件,
cmake
、
cla
ng
、
llvm
等编译生成工
具,也可以通过
pacman
来安装。
MSYS2
主页
/
/projects/msys2/
MSYS2
详细安装指南
/p/msys2/wiki/MSYS2%20installation/
2
、安装
MSYS2
首先从
MSYS2
项目主页或
SourceForge
下载
MSYS2
的基本安装包:
32
位系统下载
,
64
位系统下载
msys2-x86_
。
请记住
i686
< br>对应
32
位系统,
x86_64
对应
64
位系统,以后装软件都是这种
对应关系。
下面以
32
位的
示范安装过程:
点击“下一步”,
注意上面选择安装位置,路径里不要有任何中文、特殊字符、
空格等等,一般装在磁盘根的
msys32
或
< br>msys64
目录。
注意磁盘剩余空间要有
10GB
以上剩余空间(硬盘空间不足的不要模
仿)
,那个分区剩余空间比较大就装哪。
MSYS2
本身不大,但是后续如果装
Qt
库、
< br>opencv
之
类的,
会越装越
多,
所以要留足空间。
Qt
动态库安装
后是
2.7GB
,
Qt
静态库也是差不多
2.7GB
,
非常占空间。
设置好安装路径,点击“下一步”,
点击下一步,
等待安装结束,
< br>点击完成,看到
MSYS2
命令行:
先关闭该命令行,现在还干不了什么。
安装后,在开始菜单
-->MSYS2 32bit-->
里面有三个命令行工具:
第一个
MinGW-w64
Win32 Shell
是指
32
位程
序开发环境,
在
32
位和
64
位
Windows
里都
能用。
第二个
MinGW-w64 Win64 Shell
是指
64
位程序开发环境,仅在
64
位
Windows
里使用。<
/p>
第三个
MSYS2
Shell
是
MSYS2
环境管理命令行,可以安装卸载
MSY
S2
环境里软件、管理文
件系统、执行脚本等等。
只有在头两个
MinG
W-w64
的命令行里才能使用
gcc
、
g++
等编译工具。
MSYS2
Shell
一般仅用
于软件包安装管理和更新,另外两个
p>
Shell
才是开发环境,不要弄错了。
3
、更新
M
SYS2
系统环境
MSYS2
环境的软件和升级都是在线方式的,需要联网下载。所以需要一个可靠的软件源,软件
源配置文件在
msys32etcpacman.d
文件夹里三个:
32
、
64
、
更换软件源的话只需要更改三个文件里的
Server
=
右边的服务器地址,
用写字板或其
他编辑器
打开编辑就行了,里面都是文本(注意备份旧的文件)。
软件源可以使用默认的
SourceForge
官方地址,也可以自定义,比如使用爱尔兰的源
①
32
中使用
ftp:///mirrors//pub/sourceforge/m/ms/ms
ys2/REPOS/MIN
GW/i686
②
64
中使用
ftp:///mirrors//pub/sourceforge/m/ms/ms
ys2/REPOS/MIN
GW/x86_64
③
中使用
<
/p>
ftp:///mirrors//pub/sourceforge/m/ms/msy
s2/REPOS/MSYS2/$$a
rch
接下来打开开始菜单里的
MSYS2 Shell
进行
MSYS2
系统更新:
(
1
)更新软件数据库
pacman --needed -Sy bash pacman
pacman-mirrors msys2-runtime
有询问就输入
Y
,继续执行。
如果出现下载软件包错误,那就重
复执行刚才的命令,直到成功为止。
(
2
)关闭旧的
MSYS2
命令行,重新打开
MSYS2
Shell
,
更新软件
pacman -Su
有询问就输入
Y
,继续安装
如果出现下载软件包错误,那就重
复执行刚才的命令,直到成功为止。
更新成功之后,关闭
p>
MSYS2
命令行,完成
MSYS2
系统更新。
<
/p>
二、安装
MinGW-w64
编译套件<
/p>
默认情况下
MSYS2
只安装了基本环境,开发工具集没装,需要手动来安装,下面来安装。
打开开始菜单的
MSYS2
Shell
,执行下面命令:
1
、安装基本开发环境和工具
pacman -S
base-
devel
git
mercurial
cvs
wget
p7zip
perl
ruby
python2
说明
pacman -S
是安装软件包的意思,
base-devel
是基本开发工具和库,
git mercurial cvs
三个
是版本控制软件,
可用于下载和发
布项目源代码,
wget
是下载工
具,
p7zip
是解压缩工具,
per
l
ruby
python2
三个是脚本编程环境。
遇到“输入某个选择”,不打字,直接按
Enter
键,全部
安装。
输入
Y
,进行安装。
如果出现下载软件错误,就重复执行刚才的命令,直到成功为止。
安装成功后,继续下面小节的安装。
2
、安装
MinGW-w64
对于
32
位系统,执行:
pacman -S
mingw-w64-i686-toolchain
对于<
/p>
64
位系统,执行:
pacman -S
mingw-w64-x86_64-toolchain
注
:
32
位系统只能编译运行
32
位程序,
64
位系统既可以编译运行
64
位程序,
也可以编译运行
< br>32
位程序。如果希望在
64
位
系统同时编译
32
位和
64
位系统,可以把上面两个工具链都安装。
一般情况下只需要一个。
遇到“输入某个选择”,直接按
Enter
键,全部安装:
输入
Y
,进行安装。
如果出现下载错误,就重复执行刚才的命令,直到成功为止。
安装成功后关闭旧的命令行。在开始菜单里打开
MinGW-w64
Win32
Shell
(
64
< br>位系统是
MinGW-w64 Win64
Shell
),输入
gcc -v
就可以查看是否安装好了
MinGW-w64
< br>编译工具集:
上面安装了
MinGW-w64
工具集和基本的开
发库,还有
perl
、
python<
/p>
、
ruby
等脚本编程环境。接
下来我们来安装
Qt
开发环境。
三、安装
Qt
开发环境
Qt
开发环境
默认情况下都是使用动态链接库的,我们先安装动态库版本
Qt
和集成开发环境
QtCreator
,然后安装静态
Qt
库。
注意:动态<
/p>
Qt
库可以用于遵循
LGPL
的商业闭源软件,也可以用于
GPL
开源软件,而
静态
Qt
库只能用于
GPL
开源软件,这个规则要记牢!
1
、安装动态
Qt
库和
QtCreator
打开开始菜单里的
MSYS2
Shell
,
32
位系统执行:
pacman -S
mingw-w64-i686-qt5
mingw-w64-i686-qt-creator
64
位系统执行:
pacman -S
mingw-w64-x86_64-qt5
mingw-w64-x86_64-qt-creator
遇到询问就输入
Y
进行安装。
Qt
开发库下载时是
500MB
左右,比较费时间,需要等待,
如果下载过程中出现错误之类的,
重复执行刚才的命令,直到成功安装为止。
软件管理工具
pacman
自动使用断点续传,
不会重复下载,
所以可放心地重复执行
命令直到成功
安装。
安装
Qt
时,有一个软件包
mingw-w64-i686-fontconfig
<
/p>
,安装配置得非常慢,要耐心等它安
装好,不要以为
pacman
坏了或什么的,这个包配置就是慢;还有就是
< br>
mingw-w64-i686-qt5
这
个包本身非常大,安装起来也比较慢,需要耐心等待。
安装好了之后,需要在
MinGW-w64 Win32 Shell
(
64
位系统是
MinGW-w64 Win64
Shell
)启
动
Qt
开发工具,比如:
qtcreator
&
assistant
&
designer
&
linguist
&
说明:
qtcreator
是集成开发环境的命令
名称,
后面接
空格
和
&
是指后台启动新进程,
而不需
p>
要占用
Shell
命令前台。
QtCreator
启用时需要加载插件需要些时间,启动之后如下图所示:
这里就不示范动态库的
HelloW
orld
编译生成了。
就算是最简单
的
Qt
版
Hellworld
,它在
Windows
系统里依赖的动态链接库
也是很多的,可能有
十几个,所以用于发布程序很费劲。下面介绍
Qt
静态库安装和示范。
2
、
Qt
静态库安装
打开开始菜单里的
MSYS2
Shell
,
32
位系统执行:
pacman -S
mingw-w64-i686-qt5-static
64
位系统执行:
pacman -S
mingw-w64-x86_64-qt5-static
遇到询问就输入
Y
进行安装。
静态
Qt
库下载时大小也是
500MB
左右,安装后也是
2.7GB
左右,下载和安装都很费时间。如
果下载过程中出错,就重复执行上面命令直到成功为止。
p>
上面安装的是完整的静态
Qt
库,包括
p>
Debug
调试版和
Release
发行版,不建议使用静态库生成
调试版程序,
因为一个
Helolworld
都有
2
80MB
,
静态库生成的
Releas
e
版
Helloworld
只有
11MB
,
并且不依赖额外的
dll
,一个
exe
走遍天下
,所以适合发布程序。但是对于静态库,必须用
GPL
开源许可
证发布程序。
LGPL
仅适用于动态链接库。
< br>
3
、
QtCreator
生成静态链接
Qt
程序示范
打开
MinGW-w64
Win32 Shell
(
64
位系
统是
MinGW-w64 Win64
Shell
),执行命令:
qtcreator
&
在
QtCreator
点击菜单“文件”
-->
“新建文件或项目”,
新建
Qt
Widgets Application
,
项目名称设为
hello
,其他的不用变,点“下一步”: