首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >如何使用llvm+clang为stm32编译

如何使用llvm+clang为stm32编译
EN

Stack Overflow用户
提问于 2011-11-02 18:30:36
回答 2查看 20.6K关注 1票数 23

是否有人介绍了如何使用binutil和newlib构建llvm+clang工具链,以及如何使用它?

  • 主机: Linux,AMD64
  • 目标:code m3,stm32
  • c-lib: newlib
  • 汇编程序: gnu as

<代码>F29

EN

回答 2

Stack Overflow用户

发布于 2015-11-20 18:51:53

我创建了一个固件框架- PolyMCU https://github.com/labapart/polymcu -它是基于CMake的,支持GCC和LLVM。因为它是基于CMake的,所以你可以在Linux/Windows/MacOS上构建你的固件。它还使用了Newlib -它看起来你的所有需求都在那里!

我还写了一篇博客,在那里我比较了GCC和LLVM在ARM Cortex-M上的构建大小:http://labapart.com/blogs/3-the-importance-of-the-toolchain-version-in-embedded-space有趣的结果,Clang生成的代码并不比Cortex-M上的GCC大多少……

票数 9
EN

Stack Overflow用户

发布于 2011-11-03 04:27:22

不幸的是,目前clang还不支持灵活的交叉编译设置。因此,您很可能需要使用所有必要的参数来调用必要的工具。

首先使用--target=thhumv7-eabi configure参数构建llvm + clang (注意,对于这个配置参数,您需要使用llvm + clang )。您可能还想指定--enable-target=arm。这将指示clang在默认情况下为thumb生成代码。之后,您可以调用clang -mcpu=cortex m3来为您生成代码。

您必须通过-I / -L等手动提供所有必要的包含/库路径。

如果你对一些C++攻击感到满意,你可以编写必要的"HostInfo",这样它就会自动调用正确的工具并提供正确的路径。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/7984516

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档