首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >编译后获取make error 127

编译后获取make error 127
EN

Stack Overflow用户
提问于 2015-07-09 02:37:08
回答 1查看 23.5K关注 0票数 1

在学习了C++的基础知识之后,我正在尝试自学gnuMake

我运行的是相当于Ubuntu 14.04的系统(基础操作系统)

我得到了这个错误( make run的完整输出):

代码语言:javascript
运行
复制
g++ ./main.o -w  -o test
This is a test!
/bin/sh: 1: This: not found
make: *** [exe] Error 127

我的Makefile:

代码语言:javascript
运行
复制
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:

代码语言:javascript
运行
复制
#include <iostream>

using namespace std;

int main()
{
    cout << "This is a test!" << endl;

    return 0;
}

非常基础,但将对其进行扩展,以帮助学习如何使用和扩展我的Makefile。现在我可以看到程序正在编译和运行,但是在运行之后我得到了错误。

我搜索了Make error 127,似乎输出了许多错误,但我没有看到错误的定义,也没有看到与我类似的问题。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-07-09 02:41:47

$(shell ./$(EXEC)不正确。

这就是让make运行可执行文件,然后用可执行文件的输出替换$(shell ./$(EXEC),然后尝试将其作为配方中的命令运行。

你只是想

代码语言:javascript
运行
复制
exec: $(EXEC)
    ./$<
票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/31300984

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档