gpt4 book ai didi

c - 如何为接受命令行参数的程序创建 Makefile

转载 作者:行者123 更新时间:2023-11-30 18:57:55 25 4
gpt4 key购买 nike

我需要为一个程序创建一个 Makefile,该程序通过命令行接收文件作为输入。

这就是我的意思:

程序的 main 函数如下所示:

int main(long argc, char **argv) //'argument command' and 'argument vector'respectively
{
some code;
}

你编译这个C语言源代码文件

gcc main.c function1.c function2.c -o execute

这会创建一个名为“execute”的可执行程序。然后你将一个参数传递到这个程序中:

./execute filename

我创建的 makefile 包含以下内容:

all: xsd

xsd: main.o function1.o function2.o
gcc -o xsd main. function1.o function2.o

main.o: main.c
gcc -c -o main.o main.c

function1.o: function1.c
gcc -c -o function1.c

function2.o: function2.c
gcc -c -o function2.c

clean:
rm -rf *o xsd

那么如何创建一个合适的 makefile 以适应通过命令行传入的输入文件?也许是这样的:

./{argv}

有人知道怎么做吗?

最佳答案

只需修复 type-o,并使所有内容都依赖于 xsd 而不是 prog...

all: xsd

xsd: main.o function1.o function2.o
gcc -o xsd main.o function1.o function2.o

main.o: main.c
gcc -c -o main.o main.c

function1.o: function1.c
gcc -c -o function1.c

function2.o: function2.c
gcc -c -o function2.c

clean:
rm -rf *o xsd

关于c - 如何为接受命令行参数的程序创建 Makefile,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18930742/

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