gpt4 book ai didi

makefile - 如何创建 makefile 来编译多个程序

转载 作者:行者123 更新时间:2023-11-30 15:28:34 26 4
gpt4 key购买 nike

我在创建 makefile 时遇到一些问题。我尝试从终端编译一些文件,并找到 gcc 执行此操作的正确选项。但我在创建一个 makefile 来完成所有这些任务时遇到了一些麻烦。

这是我的有效命令。

gcc -c pstree.c -DHAVE_CONFIG_H -I.
gcc -o hello pstree.o -L/usr/lib/ -ltinfo

gcc -c fuser.c -DHAVE_CONFIG_H -I.
gcc -c -o libsignals.a signals.c
gcc -o hello fuser.o -L/usr/lib/ -L. -lsignals

gcc -c -o libsignals.a signals.c
gcc -o hello killall.o -L/usr/lib/ -L. -lsignals
gcc -c killall.c -DHAVE_CONFIG_H -I.

如何制作 Makefile 来执行这些命令?

最佳答案

killall: hello\ fuser.o
gcc -c -o libsignals.a signals.c
gcc -o hello killall.o -L/usr/lib/ -L. -lsignals
gcc -c killall.c -DHAVE_CONFIG_H -I.


fuser: hello\ pstree.o
gcc -c fuser.c -DHAVE_CONFIG_H -I.
gcc -c -o libsignals.a signals.c
gcc -o hello\ fuser.o -L/usr/lib/ -L. -lsignals

pstree:
gcc -c pstree.c -DHAVE_CONFIG_H -I.
gcc -o hello\ pstree.o -L/usr/lib/ -ltinfo

clean:
rm -rf *.o

我写得非常非常脏,你可以定义 cc 变量,例如:
CC = gcc
CFLAGS = -g -Wall -I。
LIBS = -L/usr/lib/-lsignals
等等......
我的很脏......

注意:在每行之前必须使用 TAB,而不是空格。

用法:

make clean
make killall

关于makefile - 如何创建 makefile 来编译多个程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26540374/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com