msys2安装配置

本文介绍MSYS2的安装及配置流程,包括更新源、安装开发环境等步骤,并以x264库为例说明如何编译32位与64位版本。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

msys2安装后可以在windows下编译一些开源库的32,64位版本(当然可以做更多,而我主要用于编译不同指令集的库)。

下面简单记录下msys2的安装配置过程。

1. 下载msys2安装

http://sourceforge.net/projects/msys2/

2. 更新源

在安装目录下/etc/pacman.d/找到mirrorlist.mingw32,mirrorlist.mingw64,mirrorlist.msys文件,分别更新为修改为以下内容,请对号入座。

##
## 32-bit Mingw-w64 repository mirrorlist
##

## Primary
## msys2.org
Server = http://mirrors.ustc.edu.cn/msys2/mingw/i686/
Server = http://repo.msys2.org/mingw/i686
Server = http://downloads.sourceforge.net/project/msys2/REPOS/MINGW/i686
Server = http://www2.futureware.at/~nickoe/msys2-mirror/i686/
##
## 64-bit Mingw-w64 repository mirrorlist
##

## Primary
## msys2.org
Server = http://mirrors.ustc.edu.cn/msys2/mingw/x86_64/
Server = http://repo.msys2.org/mingw/x86_64
Server = http://downloads.sourceforge.net/project/msys2/REPOS/MINGW/x86_64
Server = http://www2.futureware.at/~nickoe/msys2-mirror/x86_64/
Server = http://mirror.bit.edu.cn/msys2/REPOS/
##
## MSYS2 repository mirrorlist
##

## Primary
## msys2.org
Server = http://mirrors.ustc.edu.cn/msys2/msys/$arch/
Server = http://repo.msys2.org/msys/$arch
Server = http://downloads.sourceforge.net/project/msys2/REPOS/MSYS2/$arch
Server = http://www2.futureware.at/~nickoe/msys2-mirror/msys/$arch/
修改完成后通过命令pacman -S Syu更新,更详细的可以看pacman help,差不多更新后即可。

2.安装开发环境

在win开始菜单打开MinGW 32-bit或者64-bit,通过pacman安装32、64位gcc开发环境。

pacman -S mingw-w64-x86_64-toolchain mingw-w64-i686-toolchain

通过以上安装已经可以build,在安装目录下有mingw32、mingw64两个文件夹,分别为32、64bit环境需要的编译工具集,不需要另外去下载mingw-32、mingw-64安装。

MinGW 32-bit 64-bit都是调用安装目录下的msys2_shell.cmd,给的参数不同。

其他软件的安装使用pacman -S 名称即可,比如pacman -S make。

3. 怎么编译

msys2为默认的64位编译环境,对64bit支持比32bit友好,下面以编译x264库为例。

64位版本:

开始菜单打开minGW 64-bit,进入到x264代码目录,输入以下内容:

./configure --prefix=./x64
这样make后生成是64位版本,mingw比msys,minGW生成的文件不会依赖libgcc*库,当然你也可以在msys下使用静态库,但MinGW避免了这样的折腾。

32位版本:

同64bit版本,这里打开MinGW 32-bit,工具已经对32bit, 64bit做好很好的隔离,分别打开build即可,千万不要折腾。

!!!!使用上面64bit命令不会生成32bit makefile!!!!,而且会提示‘no working C compile not found.’,这也是我说的对32bit支持不够友好的地方。

使用以下命令:

./configure --prefix=./x86 --host=mingw32
完成后你会看到platform:X86


防止忘却所以记录。本文有些内容为其他博客摘录,也许有的地方与您的问题可能不同,感谢所有乐于奉献的人!



### 配置 MSYS2 中的 GCC 在配置 MSYS2 的 GCC 编译器前,需先启动 MSYS2 提供的 shell 环境。对于 MinGW 工具链而言,有三种不同的 shell 可选:MSYS2 MSYSMSYS2 MINGW32MSYS2 MINGW64。通常建议使用后者两种之一来操作[^2]。 更新包数据库以及已安装的软件包是必要的前置步骤: ```bash pacman -Syu ``` 完成上述命令后,可能需要重新启动相应的 shell 来使更改生效。接着可以继续安装所需的编译工具链,这其中包括了 GCC 编译器本身以及其他辅助开发工具: ```bash pacman -g base-devel mingw-w64-x86_64-toolchain ``` 此指令将会自动解析并下载一系列依赖项,其中就包含了适用于 Windows 平台上的 GCC 编译套件 (MinGW)[^3]。 一旦完成了这些准备工作,在终端内输入 `gcc -v` 应该能够正常显示出当前所使用的 GCC 版本信息而不是报错说找不到命令[^1]。 为了验证新安装好的编译器是否工作正常,可以在命令行里尝试编写一段简单的测试程序来进行编译链接过程: ```c // hello.c 文件内容如下所示 #include <stdio.h> int main() { printf("Hello from GCC on MSYS2!\n"); return 0; } ``` 保存文件后通过下面这条语句将其编译成可执行文件: ```bash gcc hello.c -o hello.exe ``` 最后运行生成的目标文件确认一切顺利无误: ```bash ./hello.exe ``` 如果屏幕上打印出了预期的消息,则说明整个设置流程已经成功结束。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值