我是一名C++程序员,有在Linux上使用GCC的经验。我想在Windows中开发一个应用程序,所以我需要一个关于mingw make文件,变量和mingw32-make的完整指南。有没有人可以介绍一下这个资源?
发布于 2012-02-28 21:53:46
mingw32-make只是GNU make的一个预编译版本,所以http://www.gnu.org/software/make/manual/应该有您需要的所有信息。
发布于 2020-02-20 19:07:25
我遇到的主要区别是mingw32-make将使用windows PATH。因此,如果您尝试从git bash运行它,它的行为将不会完全像您期望的那样(也就是说,当您不期望它时,它将调用bat脚本,并且垫片也不能很好地工作)。
设置SHELL := /bin/bash或任何类似的设置都不会有任何效果(可以通过运行make -d进行调试),但是仍然可以通过设置SHELL := bash.exe使其使用bash而不是sh。这并没有解决窗口路径的问题。
然而,我确实注意到的是,如果我另外设置了.SHELLFLAGS := -euo pipefail -c,那么它在git bash中就会突然正常运行,就好像它开始使用类Unix路径一样(如果有人能确切地确认/解释原因,那就太好了)。
所以我在我的Makefile中使用了以下代码
ifeq ($(OS),Windows_NT)
SHELL := bash.exe
else
SHELL := /usr/bin/env bash
endif
.SHELLFLAGS := -eo pipefail -c有了这样的设置,它在git bash中就可以正常运行了,就像在Linux上一样。
https://stackoverflow.com/questions/9482851
复制相似问题