首页 > 解决方案 > 如何为 arm-none-eabi-gcc 交叉编译 GSL 库?

问题描述

我需要在 LPCXpresso 4367(ARM CORTEX M4)上的程序中使用 GSL 库。我尝试遵循 LPC xpresso 的库链接过程,但 MCU 链接器给了我这些错误:

MCUXpressoIDE_10.3.0_2200\workspace\test1\Debug/../src/test1.c:53:未定义对“gsl_linalg_LU_decomp”的引用

MCUXpressoIDE_10.3.0_2200\workspace\test1\Debug/../src/test1.c:56:未定义对“gsl_matrix_alloc”的引用

MCUXpressoIDE_10.3.0_2200\workspace\test1\Debug/../src/test1.c:57:未定义对“gsl_linalg_LU_invert”的引用

等等其他功能也是如此。

我有用于 windows 的 libgsl.a 和 libgslcblas.a 预编译库,它们可以在带有 GCC 编译器的 windows 上的代码块上完美运行。

我读到我需要为 arm-none-eabi-gcc 工具链交叉编译库。但是有人也可以提供我的程序吗?

标签: armcross-compilingmicrocontrollercortex-mnxp-microcontroller

解决方案


用于 Windows 的 libgsl.a 和 libgslcblas.a 预编译库

这些不适用于ARM。

为了在另一个平台上工作,这些库需要使用适当的编译器从源代码编译(和设置 - Cortex-M4F 需要 Thumb2 指令集)。


推荐阅读