使用 arm-none-eabi 交叉编译识别编译器版本

Identify Compiler Versions with arm-none-eabi cross compiling

我正在尝试找出我的项目中使用的编译器版本(以便在整个团队中同步它们)。

我在 STM32 上使用 ChibiOS,它使用 makefile 进行编译。在 Makefile 中它使用

TRGT = arm-none-eabi-
CC   = $(TRGT)gcc

这清楚地表明正在使用 arm-none-eabi-gcc。但是我不清楚的是,我的 gcc 编译器的版本 (gcc --version) 是否与编译完全相关。据我所知,gcc 只是在这里设置为特定目标?我的 gcc/cc 可执行文件和 arm-none-eabi-gcc 可执行文件之间的关系是什么?

没有关系。它是一个单独的编译器,通常带有自己的包含文件、库、启动文件和链接描述文件。通常,它被称为工具链,因为它也经常与其他工具(链接器、特定版本的 gdb 和其他工具)一起提供。