用 STM32Cube IDE 开发 STM32F407 的项目。
我想添加一个新的库(用 ANSI C 编写),用于管理 Zigbee 帧封装:https://github.com/digidotcom/xbee_ansic_library。
我遇到的问题是,该库的一些文件中包含了诸如#include <endian.h>的头文件,但这些头文件在 STM32 的 GNU 工具链中并不存在。据我观察,这类系统库通常位于以下路径:
STM32CubeIDE_1.4.0\STM32CubeIDE\plugins\com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.10.3-2021.10.win32_1.0.0.202111181127\tools\arm-none-eabi\include
我解决方法是下载原始的 GNU endian.h 库并将其添加到该路径中,但这样做会带来两个问题:
GNU 库与 IDE 库之间存在声明冲突,因为 GNU 库与 STM32 的 GNU 工具链并不完全一致。这会导致数百个编译错误。
这种解决方法仅适用于我当前的工作电脑。如果我想在其他电脑上编译该项目,就必须重复同样的操作。
是否有方法可以有效地将更多与 STM32 兼容的 GNU 工具(例如 endian.h 或 ioctl.h)添加到 IDE 中?
|
|