如何在Windows上使用GNU Make?

20 浏览
0 Comments

如何在Windows上使用GNU Make?

我安装了MinGW和MSYS,并将C:\MinGW\bin添加到PATH,但仍然无法在Windows的cmd上运行Makefile。我想在cmd.exe中输入,例如make all,但我的cmd提示找不到该命令。

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

0
0 Comments

问题的出现原因:

这个问题的出现是因为许多使用MSYS2的人仍然在询问如何在Windows上使用GNU Make。MSYS2是一个用于Windows的软件包管理器,它用于提供类似于Linux的开发环境。许多人对MSYS2感到满意,并开始使用它来替代CygWin。然而,他们可能需要使用GNU Make来构建和管理他们的项目,因此需要了解如何在Windows上使用GNU Make。

解决方法:

要在Windows上使用GNU Make,首先需要安装MSYS2。安装完毕后,打开MSYS2 shell,并输入以下命令来安装GNU Make:

# 更新软件包数据库和核心系统软件包
pacman -Syu
# 如果需要,关闭shell并重新打开
# 再次更新
pacman -Su
# 安装make
pacman -S make
# 测试(显示版本号)
make -v

通过执行上述命令,就可以在Windows上安装GNU Make并进行测试。这样,用户就可以在MSYS2环境中使用GNU Make来构建和管理他们的项目了。

0
0 Comments

如何在Windows上使用GNU Make?

问题原因:

我使用的是GnuWin32项目中的GNU Make,可以在http://gnuwin32.sourceforge.net/找到,但是该项目已经有一段时间没有进行更新了,所以我对该项目的状态不确定。

解决方法:

1. 首先,确保您已经安装了GnuWin32项目中的GNU Make。您可以在http://gnuwin32.sourceforge.net/下载并安装最新版本。

2. 在Windows操作系统中,将GNU Make的安装路径添加到系统环境变量中,这样您就可以从任意位置运行GNU Make命令。

3. 打开命令提示符或PowerShell,并导航到您的项目目录。

4. 创建一个名为"Makefile"的文件,其中包含您的构建规则和命令。

5. 在命令提示符或PowerShell中,运行以下命令来执行GNU Make:

make

这样,您就可以在Windows上使用GNU Make进行项目的构建和自动化。请记住,虽然GnuWin32项目已经有一段时间没有更新了,但GNU Make仍然是一个强大且广泛使用的构建工具,可以帮助您简化和加速项目的构建过程。

0
0 Comments

问题:如何在Windows上使用GNU Make?

原因:

在目录C:\MinGW\bin中有一个可执行文件mingw32-make.exe,它是你要运行的make程序。由于已将所需目录添加到系统路径中,因此可以使用关键字mingw32-make运行程序make,但这不是一个容易记住的关键字。

解决方法:

将文件名从mingw32-make.exe重命名为make.exe,这样可以使用关键字make来运行程序make

可以通过以下方式进行重命名:

  1. 右键单击并重命名文件。
  2. 运行命令copy c:\MinGW\bin\mingw32-make.exe c:\MinGW\bin\make.exe

结果:

现在,如果在命令提示符上键入make,它应该输出类似以下内容:

make: *** No targets specified and no makefile found. Stop.

这表示程序make已运行。

如果这还不够清楚:make程序分发在文件mingw32-make.exe中。由于目录c:\MinGW\bin位于系统路径上,因此您可以使用mingw32-make作为命令,或者将mingw32-make.exe复制(更安全的重命名方式)为make.exe

出于庞大的原因,您应该避免将msys或mingw作为环境变量的一部分,并且msys目录是本地目录。在msys中的路径将允许您使用mingw64的bin中的make,但不讨论此问题。同样不讨论该问题,您应该创建一个到mingw32-make.exe的硬链接,即make.exe,这样可以更轻松地进行操作而不必克隆exe。尝试:mklink /H C:\MinGW\bin\mingw32-make.exe C:\MinGW\bin\make.exe

重命名文件很容易,但在安装更新时也很容易忘记执行此操作。为了获取make的“别名”,可以使用doskey。由于Windows的向后兼容性,可以在C驱动器上创建autorun.bat文件,Windows会在每次启动cmd提示符时运行该文件(类似于linux中的.bashrc文件,但是系统范围)。在autorun.bat文件中,添加以下行:make=mingw32-make.exe $*,这告诉Windows在您键入make时使用mingw32-make.exe,并将所有传递给make的参数附加到mingw32-make.exe上。

0