MinGW - 制作:cc:找不到命令

新手上路,请多包涵

我最近开始使用 MinGW,但无法让 make 在 Windows 上工作。我的目录结构是这样的:

 Makefile
p001.cpp
p002.cpp
p003.cpp
bin\

我的 Makefile 看起来像这样:

 CC=g++
BIN=bin

%: p%.cpp
    $(CC) p$*.cpp -o $(BIN)/p$*

但是,当我使用 make 时出现错误:

 > make 001
cc p001.cpp -o bin/p001
make: cc: Command not found
make: *** [001] Error 127

我不确定这里有什么问题。根据我的阅读,当找不到指定的编译器时,变量 CC 默认为 cc 。我不明白为什么会这样。 g++ 在我的系统路径变量中,仅使用 g++ p001.cpp -o bin/p001 工作正常。

原文由 hazrmard 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 586
2 个回答

在这里。我可以通过在 makefile 的开头放置一个注释行/空行来解决这个问题。之后它工作得很好。我还不知道为什么会这样。我修改后的 makefile 看起来像:

 # this is a comment
CC=g++
BIN=bin

%: p%.cpp
    $(CC) p$*.cpp -o $(BIN)/p$*

原文由 hazrmard 发布,翻译遵循 CC BY-SA 3.0 许可协议

我不确定你到底想做什么,但我假设你正在尝试做这样的事情:

 CC=g++
BIN=bin

all: p

p: p001.o p002.o p003.o
    $(CC) -o $(BIN)/program.exe p001.o p002.o p003.o

p001.o: p001.cpp
    $(CC) -c p001.cpp

p002.o: p002.cpp
    $(CC) -c p002.cpp

p003.o: p003.cpp
    $(CC) -c p003.cpp

原文由 Andreas DM 发布,翻译遵循 CC BY-SA 3.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题