C/C++配置使用windows msys2中的gcc/g++编译器

介绍

比较常见的,可以在Windows上安装各种工具链来编译C和C ++应用程序,如果是专门为Windows开发的,那是推荐Microsoft 免费提供的Visual Studio Community,出色的IDE工具。

对于那些需要或喜欢跨平台GNU工具的人,可以使用MSYS2的gcc、make、cmake工具,接下来介绍如何使用MSYS2安装gcc。

在Windows中使用Code::Blocks - The IDE with all the features you need, having a consistent look, feel and operation across platforms.。

Qt Creator是mingw工具链附带的另一个免费IDE。One framework. One codebase. Any platform.

如果拥有一台Windows,并且只是想学习和使用GNU,建议通过Microsoft Store在Windows上安装Ubuntu或Suse。这将在Windows中提供一个Linux环境;或者可以在VirtualBox或VMWare Player虚拟机中安装像Ubuntu。

安装和使用msys2

从http://www.msys2.org/下载MSYS2 。下载.exe文件然后按照网站上的安装说明进行操作。安装后,导航到安装目录,然后运行msys2.exe。一般来说,默认位置为C:\ msys64。

MSYS2使用Arch Linux发行版使用的pacman软件包管理器。初次安装后,最好更新所有软件包。使用以下命令更新所有内容:

> pacman -Syu

如果更新太慢,可以配置msys2中pacman的镜像地址,三个文件mirrorlist.mingw32、mirrorlist.msys、mirrorlist.mingw64

# C:\msys64\etc\pacman.d\mirrorlist.mingw32
##
## 32-bit Mingw-w64 repository mirrorlist
##

## Primary
##中国科学技术大学开源软件镜像
Server = http://mirrors.ustc.edu.cn/msys2/mingw/i686
##北京理工大学镜像
Server = http://mirror.bit.edu.cn/msys2/mingw/i686
##日本北陆先端科学技术大学院大学 sourceforge 镜像
Server = http://jaist.dl.sourceforge.net/project/msys2/REPOS/MINGW/i686
##The UK Mirror Service Sourceforge mirror
Server = http://www.mirrorservice.org/sites/download.sourceforge.net/pub/sourceforge/m/ms/msys2/REPOS/MINGW/i686
## Primary
Server = ftp://148.251.42.38/MINGW/i686
## Sourceforge.net
Server = http://downloads.sourceforge.net/project/msys2/REPOS/MINGW/i686

## msys2.org
Server = http://repo.msys2.org/mingw/i686/
Server = https://sourceforge.net/projects/msys2/files/REPOS/MINGW/i686/
Server = http://www2.futureware.at/~nickoe/msys2-mirror/mingw/i686/
Server = https://mirror.yandex.ru/mirrors/msys2/mingw/i686/

# C:\msys64\etc\pacman.d\mirrorlist.msys
##
## MSYS2 repository mirrorlist
##

## Primary
##中国科学技术大学开源软件镜像
Server = http://mirrors.ustc.edu.cn/msys2/msys/$arch
##北京理工大学镜像
Server = http://mirror.bit.edu.cn/msys2/mingw/$arch
##日本北陆先端科学技术大学院大学 sourceforge 镜像
Server = http://jaist.dl.sourceforge.net/project/msys2/REPOS/MINGW/$arch
##The UK Mirror Service Sourceforge mirror
Server = http://www.mirrorservice.org/sites/download.sourceforge.net/pub/sourceforge/m/ms/msys2/REPOS/MSYS2/$arch
## Primary
Server = ftp://148.251.42.38/MSYS2/$arch
## Sourceforge.net
Server = http://downloads.sourceforge.net/project/msys2/REPOS/MSYS2/$arch

## msys2.org
Server = http://repo.msys2.org/msys/$arch/
Server = https://sourceforge.net/projects/msys2/files/REPOS/MSYS2/$arch/
Server = http://www2.futureware.at/~nickoe/msys2-mirror/msys/$arch/
Server = https://mirror.yandex.ru/mirrors/msys2/msys/$arch/
# C:\msys64\etc\pacman.d\mirrorlist.mingw64
##
## 64-bit Mingw-w64 repository mirrorlist
##

## Primary
##中国科学技术大学开源软件镜像
Server = http://mirrors.ustc.edu.cn/msys2/mingw/x86_64
##北京理工大学镜像
Server = http://mirror.bit.edu.cn/msys2/mingw/x86_64
##日本北陆先端科学技术大学院大学 sourceforge 镜像
Server = http://jaist.dl.sourceforge.net/project/msys2/REPOS/MINGW/x86_64
##The UK Mirror Service Sourceforge mirror
Server = http://www.mirrorservice.org/sites/download.sourceforge.net/pub/sourceforge/m/ms/msys2/REPOS/MINGW/x86_64
## Primary
Server = ftp://148.251.42.38/MINGW/x86_64
## Sourceforge.net
Server = http://downloads.sourceforge.net/project/msys2/REPOS/MINGW/x86_64

## msys2.org
Server = http://repo.msys2.org/mingw/x86_64/
Server = https://sourceforge.net/projects/msys2/files/REPOS/MINGW/x86_64/
Server = http://www2.futureware.at/~nickoe/msys2-mirror/mingw/x86_64/
Server = https://mirror.yandex.ru/mirrors/msys2/mingw/x86_64/

在这里插入图片描述

使用MSYS2安装gcc

在MSYS2 bash shell中,再次使用pacman安装 build toolchain 和 compilers。运行以下命令以安装mingw-w64-x86_64-toolchain。

# Install make, autoconf, etc to C:\msys64\usr\bin
> pacman -S base-devel gcc vim cmake

在这里插入图片描述

注意,这里直接加上了vim和cmake。安装完这些软件包之后,在MSYS2 shell中将可以使用gcc和其他工具。如果要在命令提示符下或在MSYS2 Shell之外使用它们,则可以在C:\ msys64 \ usr \ bin目录中找到它们。

> pacman -S base-devel gcc vim cmake
:: There are 56 members in group base-devel:
:: Repository msys
   1) asciidoc  2) autoconf  3) autoconf2.13  4) autogen  5) automake-wrapper
   6) automake1.10  7) automake1.11  8) automake1.12  9) automake1.13
   10) automake1.14  11) automake1.15  12) automake1.16  13) automake1.6
   14) automake1.7  15) automake1.8  16) automake1.9  17) bison  18) diffstat
   19) diffutils  20) dos2unix  21) file  22) flex  23) gawk  24) gdb  25) gettext
   26) gettext-devel  27) gperf  28) grep  29) groff  30) help2man  31) intltool
   32) lemon  33) libtool  34) libunrar  35) libunrar-devel  36) m4  37) make
   38) man-db  39) pacman  40) pactoys-git  41) patch  42) patchutils  43) perl
   44) pkg-config  45) pkgfile  46) quilt  47) rcs  48) scons  49) sed  50) swig
   51) texinfo  52) texinfo-tex  53) ttyrec  54) unrar  55) wget  56) xmlto

安装完成之后

> gcc
gcc: fatal error: no input files
compilation terminated.

> g++
g++: fatal error: no input files
compilation terminated.

> gdb
GNU gdb (GDB) 8.2.1
Copyright (C) 2018 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.
Type "show copying" and "show warranty" for details.
This GDB was configured as "x86_64-pc-msys".
Type "show configuration" for configuration details.
For bug reporting instructions, please see:
<http://www.gnu.org/software/gdb/bugs/>.
Find the GDB manual and other documentation resources online at:
    <http://www.gnu.org/software/gdb/documentation/>.

For help, type "help".
Type "apropos word" to search for commands related to "word".
(gdb)

将可执行文件添加到Windows PATH

此外,C:\msys64\usr\bin目录中还有许多其他exe,如果将bin目录添加到PATH时,注意看一下。

如果要访问Windows命令提示符中的所有内容,则将bin目录添加到Windows PATH环境变量中。请记住,这会将很多可执行文件添加到您的路径中,这可能会与其他应用程序发生冲突。

一般来说是这两个路径:

C:\msys64\mingw64\bin
C:\msys64\usr\bin

MSYS vs Mingw64

有些东西仅在msys/repo中可用,例如vim和git,并且仅在\usr\bin\中可用。诸如gcc之类的东西在msys \,mingw32\和mingw64\repos中可用,并且有可能安装在\usr\bin\和\mingw64\bin\中。

在这里,必须注意如何设置PATH环境变量。

如果已经添加\usr\bin\使用vim或git的话,再将\mingw64\bin\也添加到PATH中,则可能会与某些内容发生冲突。

如果只希望build toolchain和compiler,请直接使用mingw64软件包,仅将\mingw64\bin目录添加到PATH中。

另外,mingw64通常具有更多可用于安装的库,这些库在一般的msys存储库中不可用(例如SDL,exif,freeglut),具体可以看pacman的用法。

  • 8
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
VSCode是一款轻量级的代码编辑器,可以通过配置来支持C/C++开发环境。在Windows系统,可以使用MSYS2配置C/C++环境。 以下是配置VSCode的C/C++环境的步骤: 1. 安装VSCode:首先,你需要下载并安装VSCode编辑器,可以从官方网站(https://code.visualstudio.com/)下载适合你的操作系统的版本。 2. 安装MSYS2:接下来,你需要下载并安装MSYS2,它是一个软件包管理器,可以提供C/C++编译器和其他必要的工具。你可以从MSYS2的官方网站(https://www.msys2.org/)下载安装程序。 3. 配置MSYS2环境:安装完成后,打开MSYS2的终端(一般是"Msys2 MinGW 64-bit"或"Msys2 MinGW 32-bit"),执行以下命令更新软件包列表: ``` pacman -Syu ``` 然后执行以下命令安装C/C++编译器和其他必要的工具: ``` pacman -S mingw-w64-x86_64-toolchain ``` 4. 安装VSCode插件:打开VSCode,在扩展面板搜索并安装"C/C++"插件,这个插件提供了C/C++开发所需的功能和工具。 5. 配置VSCode:在VSCode打开你的C/C++项目文件夹,然后按下快捷键"Ctrl + Shift + P"打开命令面板,输入"Edit Configurations"并选择"Edit Configurations (JSON)"。这将打开一个名为"c_cpp_properties.json"的文件,你可以在其配置C/C++编译器路径和其他选项。 例如,你可以添加以下配置指定MSYS2编译器路径: ```json { "configurations": [ { "name": "MSYS2", "includePath": [ "${workspaceFolder}/**" ], "defines": [], "compilerPath": "C:/msys64/mingw64/bin/gcc.exe", "cStandard": "c11", "cppStandard": "c++17", "intelliSenseMode": "gcc-x64" } ], "version": 4 } ``` 注意替换上述配置编译器路径为你实际安装的路径。 6. 编写和调试代码:现在你已经完成了C/C++环境的配置,可以在VSCode编写和调试C/C++代码了。你可以创建新的C/C++文件,编写代码,并使用"C/C++"插件提供的功能进行编译和调试。 希望以上步骤对你有所帮助!

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值