繁体   English   中英

如何在Windows上使用GNU Make?

[英]How to use GNU Make on Windows?

我安装了MinGW和MSYS,将C:\\MinGW\\binPATH但是我仍然无法在Windows的cmd上运行Makefile。 我想运行cmd.exe,然后键入,例如, make all我的cmd之外的make all都说没有这样的命令。

我该怎么办? 我不想使用MSYS Shell,这不是重点。 有什么想法可以像在Ubuntu中那样在Windows cmd中使用GNU Make吗? 我对Cygwin不感兴趣。

这是我如何使其工作的方法:

  copy c:\MinGW\bin\mingw32-make.exe c:\MinGW\bin\make.exe

然后,我可以打开命令提示符并键入make:

  C:\Users\Dell>make
  make: *** No targets specified and no makefile found.  Stop.

这意味着它现在正在工作!

我正在使用来自GnuWin32项目的GNU Make,请访问http://gnuwin32.sourceforge.net/,但是暂时没有任何更新,因此我不确定该项目的状态。

尽管这个问题很古老,但是许多使用MSYS2的人仍然提出了这个问题。

我从今年开始使用它来替代CygWin,现在我感到非常满意。

要安装make ,请打开MSYS2 shell并键入以下命令:

# Update the package database and core system packages
pacman -Syu
# Close shell and open again if needed

# Update again
pacman -Su

# Install make
pacman -S make

# Test it (show version)
make -v

您可以使用以下命令从命令提示符处将应用程序文件夹添加到路径中:

setx PATH“%PATH%; c:\\ MinGW \\ bin”

请注意,您可能需要打开一个新的命令窗口以使修改后的路径设置生效。

或者,如果您只想安装make,则可以使用Chocolatey软件包管理器通过以下方式安装gnu make

choco install make -y

这处理您可能遇到的任何路径问题。

user1594322提供了正确的答案,但是当我尝试它时,我遇到了管理/权限问题。 我能够复制'mingw32-make.exe'并粘贴它,否决/绕过管理问题,然后将副本编辑为'make.exe'。 在Win7 guest虚拟机中的VirtualBox上。

尽管make本身可以作为独立的可执行文件( gnuwin32.sourceforge.net软件包make )使用,但在适当的开发环境中使用它意味着使用msys2

Git 2.24(2019年第四季度)说明:

请参阅提交4689931提交b35304b提交ab7d854提交be5d88e提交5d65ad1提交030a628提交61d1d92提交e4347c9提交ed712ef提交5b8f9e2提交41616ef提交c097b95 (2019年10月4日)和提交dbcd970 (2019年9月30日)由Johannes Schindelin( dscho
(由Junio C gitster - gitstercommit 6d5291b中合并 ,2019年10月15日)

test-tool run-command :学习运行测试套件(的一部分)

签字人:约翰内斯·辛德尔林

适用于Windows的Git跨越了障碍,提供了一个开发环境,该环境允许构建Git并运行其测试套件。

为此,提供了一个完整的MSYS2系统,包括GNU make和GCC作为“ Windows SDK的Git”。
它的确是有代价的:最初下载的SDK包含数百兆字节,而未打包的SDK占用约2GB的磁盘空间。

Windows上更加本地化的开发环境是Visual Studio。 为了帮助贡献者使用该环境,我们已经有了一个Makefile目标vcxproj ,该目标生成带有项目文件(和其他生成的文件)的提交,并且使用该目标不断重新生成Windows的Git vs/master分支。

这个想法是允许在Visual Studio中构建Git,并使用Portable Git运行个别测试。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM