我为学校项目创建的 makefile 遇到一些问题。我正在编译和汇编一个 C 文件和一个 SPARC 汇编文件(分别)并链接它们。我在 Unix 环境中工作。这是生成文件:
proj09.exe: proj09.driver.o proj09.support.o
<tab>gcc -Wall proj09.driver.o proj09.support.o -o proj09.exe
proj09.driver.o: proj09.driver.c /user/cse320/Projects/project09.support.h
<tab>gcc -Wall -c proj09.driver.c /user/cse320/Projects/project09.support.h
proj09.support.o: proj09.support.s
<tab>gcc -Wall proj09.support.s
但是,当我尝试做到这一点时,我收到一个阅读器错误,具体来说:
“阅读器中的 fatal error :proj09.makefile,第 2 行:出现意外的行尾”
现在我知道这通常意味着某些内容的格式不正确,但我不知道在这种情况下可能是什么。另外,我不能 100% 确定这是 makefile 的正确代码(特别是我的 support.s 文件的汇编以及两个文件的链接)。如果这是一个重复的问题,我很抱歉,我事先浏览了文件,但找不到任何有用的东西。任何帮助将不胜感激!
编辑:我不明白为什么这会产生影响,但我正在使用 gedit 来实际编写代码,然后将文件传输到 SSH 中进行链接。
最佳答案
正如 Joachim 告诉你的,行应该用制表符缩进,而不是空格,所以第二行应该如下所示:
[TAB]gcc -Wall proj09.driver.o proj09.support.o -o proj09.exe[NEWLINE]
其中 [TAB] 表示 TAB 字符。
命令后面也不应该有任何空格。这就是我放置 [NEWLINE] 字符的原因。
关于c - Makefile 问题 - 阅读器中的 fatal error ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13532234/