7

在我的例子中,我有一个使用代码 sourcery gcc 构建的库,针对 arm cortex-m4。然后我试图将该库链接到使用 IAR 编译器编译的项目中。

是否可以这样做,或者是否必须使用新工具重建库?哪些因素会影响这一点?

4

2 回答 2

7

静态库是几个目标文件的捆绑包,这些文件总是特定于编译器的。因此,如果您尝试将gcc基于库的库与IAR编译器链接,由于要链接的目标文件格式之间的不匹配,您将在编译时出错。

您需要使用 IAR 重建您的库。

于 2013-10-08T13:50:23.700 回答
2

ARM 的 IAR 编译器支持 AEABI 格式,它允许您使用一个编译器编译文件并与另一个编译器链接。

如果您使用 GCC 构建了库并启用了 AEABE,则应该可以在使用 IAR 工具的项目构建中使用静态库。

于 2013-10-17T13:11:17.063 回答