gpt4 book ai didi

c - 在 makefile 上添加库

转载 作者:行者123 更新时间:2023-11-30 21:12:46 26 4
gpt4 key购买 nike

我在 link 上执行“使用“真实”交叉编译器”描述的指南。在指南的底部有一个标准的 makefile。我用 C 编写了一个简单的程序,并使用命令使其运行。现在我想用库“ev3c.h”编写一个程序。如何在 makefile 中添加这个库?

最佳答案

如果您使用的是 gcc 或 clang,请在您的配方中将 -I/home/daniele/ev3c/include 传递给它。这将允许您使用 #include "someheader" 从该路径 #include

就包含文件的 Make 处理而言,它们通常是隐式依赖项 - 也就是说,您通常不想在依赖项中显式提及它们,因为诸如 clang 之类的编译器或 gcc 可以检测它们并将它们添加到适合您的 Makefile 规则中。

-MMD -MF somefile 允许您使用 gcc 或 clang 进行这种 #include 依赖项检测:

例如:

%.o: %.c
$(COMPILE.c) -I /home/daniele/ev3c/include $(OUTPUT_OPTION) $< -MMD -MF $(patsubst %.o,%.o.d,$@)

-include $(wildcard *.o.d)

这将使编译器检测每个已编译的 c 文件的包含依赖项,并且 -include 行会将这些依赖项添加到您的 Makefile 中,以便如果您的 C 文件包含 "foo.h" 和 foo.h 发生更改,即使您没有将 foo.h 作为显式依赖项提及,make 也会触发重新编译。

关于c - 在 makefile 上添加库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38921003/

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