我对为学校项目创建的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
不过,当我试图做到这一点时,我会遇到一个读者错误,特别是:
读取器中的致命错误:proj09.makefile,第2行:出现意外的行尾
现在我知道这通常意味着某些东西的格式不正确,但我不知道在这种情况下它可能是什么另外,我不能百分之百确定这是makefile的正确代码(特别是组装我的support.s文件和链接这两个文件)如果这是一个重复的问题,我很抱歉,我事先查阅了档案,找不到任何有用的东西任何帮助都将不胜感激!
编辑:我不明白为什么这会有什么不同,但我使用gedit实际编写代码,然后将文件传输到SSH进行链接。
最佳答案
正如Joachim告诉你的,行应该按制表符缩进,而不是按空格缩进,所以第二行应该像:
[TAB]gcc -Wall proj09.driver.o proj09.support.o -o proj09.exe[NEWLINE]
其中,[制表符]表示制表符。
命令后面也不应该有空格所以我才放了[NEWLINE]char。