在学习了C++的基础知识之后,我正在尝试自学gnuMake
我运行的是相当于Ubuntu 14.04的系统(基础操作系统)
我得到了这个错误( make run的完整输出):
g++ ./main.o -w -o test
This is a test!
/bin/sh: 1: This: not found
make: *** [exe] Error 127我的Makefile:
CC=g++
SRC=$(shell find -name '*.cpp')
OBJS= $(SRC:.cpp=.o)
EXEC=test
FLAGS= -w
LINKS=
%.o: %.cpp
$(CC) -c $*.cpp -o $*.o
$(EXEC): $(OBJS)
$(CC) $(OBJS) $(FLAGS) $(LINKS) -o $(EXEC)
all: $(EXEC)
exe:
$(shell ./$(EXEC))
run: all exe
clean:
rm -rf *.o $(EXEC)这是学习基本make教程和在github中阅读Makefiles的组合
main.cpp:
#include <iostream>
using namespace std;
int main()
{
cout << "This is a test!" << endl;
return 0;
}非常基础,但将对其进行扩展,以帮助学习如何使用和扩展我的Makefile。现在我可以看到程序正在编译和运行,但是在运行之后我得到了错误。
我搜索了Make error 127,似乎输出了许多错误,但我没有看到错误的定义,也没有看到与我类似的问题。
发布于 2015-07-09 02:41:47
$(shell ./$(EXEC)不正确。
这就是让make运行可执行文件,然后用可执行文件的输出替换$(shell ./$(EXEC),然后尝试将其作为配方中的命令运行。
你只是想
exec: $(EXEC)
./$<https://stackoverflow.com/questions/31300984
复制相似问题