C make/mingw32 make命令不是';t在windows 10上工作

C make/mingw32 make命令不是';t在windows 10上工作,c,gcc,makefile,mingw,chocolatey,C,Gcc,Makefile,Mingw,Chocolatey,我已经为C安装了make编译器,但它不工作。我已经安装了MinGW,安装了mingw32 make和choco make,但它们都不起作用。当我试图编译一个名为hello.C的hello world C程序时,它们都输出了相同的错误: #包括 内部主(空) { printf(“你好,世界!”); 返回0; } 然后,我在终端中键入打招呼或mingw32打招呼,然后输出: cc hello.c -o hello process_begin: CreateProcess(NULL, c

我已经为C安装了
make
编译器,但它不工作。我已经安装了MinGW,安装了mingw32 make和choco make,但它们都不起作用。当我试图编译一个名为
hello.C
的hello world C程序时,它们都输出了相同的错误:

#包括
内部主(空)
{
printf(“你好,世界!”);
返回0;
}
然后,我在终端中键入
打招呼
mingw32打招呼
,然后输出:

cc     hello.c   -o hello
process_begin: CreateProcess(NULL, cc hello.c -o hello, ...) failed.
make (e=2): El sistema no puede encontrar el archivo especificado. (System couldn't find the specified file)
make: *** [<builtin>: hello] Error 2
make/mingw32-make: Nothing to be done for 'hello.c'.

然而,使用
gcc
命令确实有效,所以我不知道该怎么做。如果有人知道该做什么,请帮忙。谢谢

使用此命令行调用make:

make CC=gcc hello
编译C程序的内置规则使用
CC
作为编译器的宏,默认为
CC


但是,如果项目增长,则需要创建一个makefile。请阅读make的文档和一些教程以了解如何做到这一点。此makefile将用您自己的规则替换一些内置规则,您可以将GCC定义为编译器。

Make不是编译器。Make是一个生成控制工具,它调用编译器。编译器是一个完全不同的程序,必须单独安装。在本例中,make试图调用编译器
cc
,而该编译器显然不存在于您的系统中。因此,要么你没有安装C编译器,要么你已经安装了一个C编译器,但它不叫
cc
,在这种情况下,你必须告诉make它叫什么(通常通过在makefile或make命令行中设置
cc
变量)。哦,好的,谢谢。有没有办法使gcc成为编译器的默认宏?(我的项目不会增长,因为我只是试着从我的计算机上运行一些旧的CS50文件,但我不认为我会使用C来实现一些“真实的”)嗯,make是开源的。您可以获取其源并更改它。-我目前没有时间研究它,但文档可能会说明一些事情。例如,您可以设置一个环境变量。-对于像您计划的这样简单的项目,生成文件非常简单。-几年前,我甚至使用make的选项
-r
来禁用所有内置规则,以确保在我的makefile中定义了任何内容。