gpt4 book ai didi

c - make - 指定要从命令行链接的库(没有 Makefile)

转载 作者:太空宇宙 更新时间:2023-11-04 03:33:02 25 4
gpt4 key购买 nike

对于简单的程序,例如 proc.c只有一个源文件,只用make proc编译链接很方便,默认搜索 proc.c并创建 proc作为输出文件。无需创建 Makefile为此。

如果proc.c需要链接一些库,例如数学库(由 <math.h> 定义)。使用 gcc直接,我们可以使用gcc -c proc.c -o proc -lm .有没有等价的 make指定 -lm 的命令行选项所以我们可以使用 make直接命令而不写 Makefile


Basile Starynkevitch 建议的类似任务:

Makefile with Multiple Executables

最佳答案

不带 makefile 的 make 链接库

如果您的源文件是 prova.c,那么您可以执行以下操作:

$> export LDFLAGS=-lm; make prova

或:

$> export LDLIBS=-lm; make prova    # LDLIBS works on Linux (but LDFLAGS doesn't)

或:

$ make prova LDLIBS=-lm

因为 Make 使用了这个隐式规则:

%: %.o    # Link object file
$(CC) $(LDFLAGS) n.o $(LOADLIBES) $(LDLIBS)

Make 有几个隐式规则,您可以使用 make -p 查看所有这些规则。有关详细信息,请参阅此 post .

关于c - make - 指定要从命令行链接的库(没有 Makefile),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34702937/

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