首页 文章

arm-none-eabi和arm-linux-gnueabi之间的区别?

提问于
浏览
3

arm-none-eabi和arm-linux-gnueabi有什么区别?我知道如何使用它们的区别(一个用于裸机软件,另一个用于软件意味着在linux上运行) . 但技术背景是什么?

我看到ABI存在差异,据我所知,它类似于API,但在二进制级别 . 它确保了不同应用程序的互操作性 .

但我真的不明白,拥有或不拥有操作系统会影响我的工具链 . 我想到的唯一一件事是,在编译裸机软件时,库可能必须是静态链接(它们是吗?),因为没有动态提供它们的操作系统 .

我找到的与此toppic相关的大多数页面都回答了如何使用工具链而不是技术背景 . 我是机电一体化和嵌入式系统新手的学生,所以我在这个领域的经验有点受限 .

1 回答

  • 2

    也许这个link对描述会有所帮助 .

    可能是最大的区别:

    “裸机ABI将假设一个不同的C库(例如newlib,甚至没有C库)到Linux ABI(假设glibc) . 因此,编译器可能会根据它认为上面提供的内容进行不同的函数调用 . 超越标准C库 . “

相关问题