windows7下使用gnu工具编译cc 程序的环境搭建msys2 下载本文

内容发布更新时间 : 2024/5/12 21:15:51星期一 下面是文章的全部内容请认真阅读。

windows7下使用gnu工具编译cc++程序的环境搭建msys2

!!!Windows 7下使用GNU工具编译C/C++程序的环境搭建 MSYS2本文旨在介绍在Windows下搭建支持C/C++编码的开发环境。 1 概述

http://repo.msys2.org/distrib/i686/msys2-i686-20161025.exe MSYS2是Windows下的类Unix命令行运行环境。它提供了pacman包管理器,用pacman可以方便你安装其它程序包或者工具。

MINGW32 和 MINGW64 包含GNU编译工具集合,可以用它编译C/C++, Fortran,和其它源代码。它们的区别之处就是,分别是32位和64位系统下的版本。它们编译的代码,即使没有MINGW32,MINGW64或者MSYS2提供的运行时库,也可以在Windows下运行。GCC既可以被MSYS2也可以被Window原生CMD命令调用。我乐意选择MSYS2,是因为它建立的环境,提供了包管理器,可以方便安装其它编码工具(例如,autoconf 和 automake)。 当然了,MINGW32 和 MINGW64 也可以单独安装,即使没有 MSYS2。但是,我还是强烈建议使用MSYS2安装。2 安装 MSYS2

确保系统上没有mingw 或 msys,否则,请卸载它们; 运行MSYS2 installer,或者使用 sourceforge上的 MSYS2 installer(根据自己系统选择对应的版本);

安装完成后,请务必不要按照官网给出的步骤,避免产生以下错误。

错误:GPGME error: Invalid crypto engine 错误:GPGME error: Invalid crypto engine 错误:GPGME error: Invalid crypto engine

错误:「mingw32」数据库不正确 (数据库不正确或损毁 (PGP 签名))

错误:「mingw64」数据库不正确 (数据库不正确或损毁 (PGP 签名))

错误:「msys」数据库不正确 (数据库不正确或损毁 (PGP 签名))

按照 C:\\msys64\\etc\\pacman.conf 第45至47行的描述: # NOTE: You must run 'pacman-key --init' before first using pacman; the local

# keyring can then be populated with the keys of all official Arch Linux

# packagers with 'pacman-key --populate archlinux'. 你必须先执行命令 pacman-key --init

接着,换掉 C:\\msys64\\etc\\pacman.d\\ 的 mirrorlist.mingw32,

mirrorlist.mingw64 和 mirrorlist.msys 里的默认源(这里,C:\\msys64要对应于你安装的目录位置),改为以下源: ## 32-bit Mingw-w64 repository mirrorlist Server =

https://mirrors.tuna.tsinghua.edu.cn/msys2/mingw/i686/ Server = https://mirrors.ustc.edu.cn/msys2/mingw/i686/ Server = https://mirrors.xjtu.edu.cn/msys2/mingw/i686/ ## 64-bit Mingw-w64 repository mirrorlist Server =

https://mirrors.tuna.tsinghua.edu.cn/msys2/mingw/x86_64/ Server = https://mirrors.ustc.edu.cn/msys2/mingw/x86_64/ Server = https://mirrors.xjtu.edu.cn/msys2/mingw/x86_64/ ## MSYS2 repository mirrorlist

Server = https://mirrors.tuna.tsinghua.edu.cn/msys2/msys/$arch Server =

https://mirrors.ustc.edu.cn/msys2/REPOS/MSYS2/$arch Server = https://mirrors.xjtu.edu.cn/msys2/msys/$arch 然后才能下命令来同步源,并更新 pacman -Syuu

接着,你就可以愉快地使用了。