我在Windows 10上运行MingW32。当我尝试使用以下命令编译程序时:
$ make -f Makefile cc -g -Wall -o runScript.exe abc.o def.o ghi.o -lgdi32 -lcomdlg32 #-mwindows
字符串我得到一个错误:
/bin/sh: cc: command not found make: ***[runScript.exe] Error 127
型会很感激你能解决这个问题。
pb3skfrl1#
Makefile在使用gcc时找不到cc的技巧通常是将CC=gcc.exe设置为环境变量(如果需要CXX= g ++. exe,您也可以指定完整路径),或者在make命令行上设置为:make CC=gcc.exe(您不需要添加-f Makefile,因为这是默认值)。
make CC=gcc.exe
-f Makefile
wnvonmuf2#
感谢您的评论.它给了我方向. MinGW不附带cc,所以不是将其定义为gcc作为环境变量,我使用了一个简单的选项,使g++.exe的副本到C:\MinGW\bin中的cc.exe.它现在工作.
cc
g++.exe
C:\MinGW\bin
cc.exe
zaqlnxep3#
错误造成:抄送:命令未找到通常意味着编译器cc未安装或在系统的PATH中不可用。看起来您的Makefile依赖于cc命令,该命令通常是默认C编译器的符号链接。你可以通过在你的系统上安装一个C编译器来解决这个问题,比如gcc。如果你在一个基于Debian的系统上,比如Ubuntu,你可以运行:sudo apt update sudo apt install build-essential这将安装必要的软件包,包括gcc,g++和其他编译所需的工具。一旦安装,尝试再次运行make,它应该会选择正确的编译器。
3条答案
按热度按时间pb3skfrl1#
Makefile在使用gcc时找不到cc的技巧通常是将CC=gcc.exe设置为环境变量(如果需要CXX= g ++. exe,您也可以指定完整路径),或者在make命令行上设置为:
make CC=gcc.exe
(您不需要添加-f Makefile
,因为这是默认值)。wnvonmuf2#
感谢您的评论.它给了我方向. MinGW不附带
cc
,所以不是将其定义为gcc作为环境变量,我使用了一个简单的选项,使g++.exe
的副本到C:\MinGW\bin
中的cc.exe
.它现在工作.zaqlnxep3#
错误造成:抄送:命令未找到通常意味着编译器cc未安装或在系统的PATH中不可用。看起来您的Makefile依赖于cc命令,该命令通常是默认C编译器的符号链接。
你可以通过在你的系统上安装一个C编译器来解决这个问题,比如gcc。如果你在一个基于Debian的系统上,比如Ubuntu,你可以运行:
sudo apt update sudo apt install build-essential
这将安装必要的软件包,包括gcc,g++和其他编译所需的工具。一旦安装,尝试再次运行make,它应该会选择正确的编译器。