我目前出于学习目的,尝试构建一个 Makefile 以了解嵌入式编程的构建过程。我使用的是 Keil microVision 中包含的工具链,所以我的编译器是“armclang”。
Makefile 目前看起来像这样:
arm-toolchain := C:\Keil_v5\ARM\ARMCLANG\bin
export PATH:=$(arm-toolchain);$(PATH)
.PHONY: all
all: object-files
object-files: $(wildcard *.c) $(wildcard *.h)
armclang -c -g -std=c11 --target=arm-arm-none-eabi $??
我尝试阅读armclang文档,看看是否有办法指定“包含路径”,但文档中没有提到任何内容。
在线搜索只能得到其他工具链的结果,这些工具链有不同的方法。
目前想到的唯一解决方案是将所有内容放入路径中的包含文件中,但这似乎不对。
我期待有一个明确的方法来实现这一点。
显然,
armclang
是Clang的变体。 Clang 识别传统的 Unix C 编译器选项,特别包括 -I
用于将目录添加到包含搜索路径。