前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >技术|使用 MinGW 在 Windows 上使用 GNU

技术|使用 MinGW 在 Windows 上使用 GNU

原创
作者头像
知忆
修改2021-07-06 10:47:10
1.5K0
修改2021-07-06 10:47:10
举报
文章被收录于专栏:linux百科小宇宙linux百科小宇宙

在Windows上安装GNU编译器集合(gcc)和其他GNU组件来启用GNUAutotools。

如果你是一名使用Windows的黑客,你不需要专有应用来编译代码。借助MinimalistGNUforWindows(MinGW)项目,你可以下载并安装GNU编译器集合(GCC)以及其它几个基本的GNU组件,以在Windows计算机上启用GNUAutotools。

安装MinGW安装MinGW的最简单方法是通过mingw-get,它是一个图形用户界面(GUI)应用,可帮助你选择要安装哪些组件,并让它们保持最新。要运行它,请从项目主页下载mingw-get-setup.exe。像你安装其他EXE一样,在向导中单击完成安装。

在Windows上安装GCC目前为止,你只安装了一个程序,或者更准确地说,一个称为mingw-get的专用的包管理器。启动mingw-get选择要在计算机上安装的MinGW项目应用。

首先,从应用菜单中选择mingw-get启动它。

要安装GCC,请单击GCC和G++包来标记要安装GNUC、C++编译器。要完成此过程,请从mingw-get窗口左上角的安装菜单中选择应用更改。

安装GCC后,你可以使用完整路径在PowerShell中运行它:

PS>C:\MinGW\bin\gcc.exe--versiongcc.exe(MinGW.orgGCCBuild-x)x.y.zCopyright(C)2019FreeSoftwareFoundation,Inc.在Windows上运行Bash虽然它自称“minimalist”(最小化),但MinGW还提供一个可选的Bourneshell命令行解释器,称为MSYS(它代表最小系统MinimalSystem)。它是微软的cmd.exe和PowerShell的替代方案,它默认是Bash。除了是(自然而然的)最流行的shell之一外,Bash在将开源应用移植到Windows平台时很有用,因为许多开源项目都假定了POSIX环境。

你可以在mingw-getGUI或PowerShell内安装MSYS:

PS>mingw-getinstallmsys要尝试Bash,请使用完整路径启动它:

PS>C:\MinGW\msys/1.0/bin/bash.exebash.exe-$echo$0"C:\MinGW\msys/1.0/bin/bash.exe"在Windows上设置路径你可能不希望为要使用的每个命令输入完整路径。将包含新GNU可执行文件的目录添加到Windows中的路径中。需要添加两个可执行文件的根目录:一个用于MinGW(包括GCC及其相关工具链),另一个用于MSYS(包括Bash、GNU和BSD项目中的许多常用工具)。

若要在Windows中修改环境,请单击应用菜单并输入env。

这将打开“首选项”窗口。点击窗口底部附近的“环境变量”按钮。

在“环境变量”窗口中,双击底部面板中的“路径”选区。

在“编辑环境变量”窗口中,单击右侧的“新增”按钮。创建一个新条目C:\MinCW\msys\1.0\bin,然后单击“确定”。以相同的方式创建第二条C:\MinGW\bin,然后单击“确定”。

在每个首选项窗口中接受这些更改。你可以重启计算机以确保所有应用都检测到新变量,或者只需重启PowerShell窗口。

从现在开始,你可以调用任何MinGW命令而不指定完整路径,因为完整路径位于PowerShell继承的Windows系统的%PATH%环境变量中。

Helloworld你已经完成设置,因此可以对新的MinGW系统进行小测试。如果你是Vim用户,请启动它,然后输入下面的“helloworld”代码:

#include#includeusingnamespacestd;intmain(){coutgcchello.cpp--outputhello最后,运行它:

PS>.\a.exeHelloopensource.PS>MinGW的内容远不止我在这里所能介绍的。毕竟,MinGW打开了一个完整的开源世界和定制代码的潜力,因此请充分利用它。对于更广阔的开源世界,你还可以试试Linux。当所有的限制都被消除后,你会惊讶于可能的事情。但与此同时,请试试MinGW,并享受GNU的自由。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档