【发布时间】:2017-04-12 01:57:41
【问题描述】:
以下终端命令将在 linux 中编译和链接我的 .c 和 .s 文件
rm *.o
gcc -c printS.c -o printS.o
as lab8.S -o lab8.o
gcc lab8.o printS.o -o lab8test
我从未编写过 make 文件,我认为这样的东西值得。任何帮助表示赞赏。
【问题讨论】:
以下终端命令将在 linux 中编译和链接我的 .c 和 .s 文件
rm *.o
gcc -c printS.c -o printS.o
as lab8.S -o lab8.o
gcc lab8.o printS.o -o lab8test
我从未编写过 make 文件,我认为这样的东西值得。任何帮助表示赞赏。
【问题讨论】:
与制作任何 make 文件的方式相同。我确信那里有大量的示例和网页。
ideally_the_result : dependencies
<tab>the commands
<tab>the commands
<tab>the commands
所以
printS.o : printS.c
gcc -c printS.c -o printS.o
并为您使用的每个命令制定规则。我建议你把最后一个放在第一位,如果你在 make 上没有命令行选项,它是默认的
还有
clean :
rm -f *.o
rm -f lab8test
覆盖清理(make clean)
这是一种超级简单的方法。从那里您可以深入研究各种(特定于程序、gnu make 与其他)特殊字符,这些字符意味着要制定更复杂的规则。
【讨论】: