《ARM Cortex-M0 权威指南》笔记(12)—GNU ARM编译器
admin 于 2021年09月28日 发表在 Cortex-M0开发笔记
除了ARM提供的工具链之外,在Cortex-M0软件开发中,也可以使用其他供应商提供的开发工具,其中包括许多基于GNU工具链的开发组件。
1. Sourcery G++ 编译链
对于没有操作系统的 Cortex-M0 软件开发,应该使用 EABI 版本的 Sourcery G++。
Sourcery G++ 官网:https://sourcery.sw.siemens.com
不同 Sourcery G++ 版本对比:
2. GCC开发流程
GNU工具链包括C编译器、汇编器、链接器、库、调试器以及其他工具。开发应用程序时,可以使用C、汇编或混合语言编程。
使用gcc典型软件开发流程:
笔者在Ubuntu 18.04 x64 系统下进行搭建。下载 arm-2011.03-42-arm-none-eabi-i686-pc-linux-gnu.tar.bz2 安装包(也可以在ARM官网下载最新版本),解压到特定目录。
在终端 export 环境变量后,输入 " arm-none-eabi-gcc -v " 查看版本信息,如下:
GCC主要编译选项,如下:
比如,mcpu对应参数,如下:
3. 编译举例
以 STM32F030F4P6 为例,其 GCC 工程源码已经整理好,可直接下载(stm32f030F4P6_gnu.zip)。
解压工程源码,在终端中直接运行 make,编译输出如下:
最终生成 elf 、hex、bin 文件,如下:
关于GCC工具的进一步使用方法,可查看官网应用手册。
注意:本站所有文章除特别说明外,均为原创,转载请务必以超链接方式并注明作者出处。
标签:ARM,Cortex-M0,Cortex-M0应用开发,GNU_ARM