Mac下使用armlinuxgcc编译工具链 (mac arm-linux-gcc)

最近学习嵌入式开发,发现将代码编译成适合嵌入式硬件执行的指令是必要的一步。其中,armlinuxgcc编译工具链是一种常用的工具链。然而,在使用Mac系统的开发者面前,我们需要克服一些问题才能顺利使用这个工具链。本篇文章将介绍如何在Mac系统下使用armlinuxgcc编译工具链。

一、安装Homebrew

我们需要在Mac系统下安装Homebrew。Homebrew是Mac系统下的包管理器,可以快速方便地安装和卸载各种工具。打开终端,输入以下命令安装:

“`

/bin/bash -c “$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)”

“`

安装过程中需要输入管理员密码进行确认,安装完成后输入以下命令验证是否安装成功:

“`

brew –version

“`

若出现版本号,则表示安装成功。

二、安装armlinuxgcc工具链

接下来,我们需要安装armlinuxgcc工具链。在终端中,输入以下命令:

“`

brew tap SergioBenitez/osxct

brew install arm-linux-gnueabi-gcc

“`

这个命令将会安装一个名为arm-linux-gnueabi-gcc的包。这里,我们使用gnueabi版本,是因为它支持ARMv6-M和ARMv7-M的嵌入式系统。

安装完成后,可以通过以下命令检查工具链是否正确安装:

“`

arm-linux-gnueabi-gcc -v

“`

如果能够正确显示版本和其他信息,则表示工具链安装成功。

三、编译并运行代码

为了验证工具链是否正确运行,我们编写一个简单的程序并进行编译。

新建一个文件夹test,在该文件夹下创建一个名为test.c的文件,输入以下代码:

“`

#include

int mn(){

printf(“Hello, embedded world!\n”);

return 0;

}

“`

保存文件后,在终端中进入该文件夹,并输入以下命令进行编译:

“`

arm-linux-gnueabi-gcc -o test test.c

“`

此命令将会生成一个名为test的可执行文件。

输入以下命令运行该文件:

“`

qemu-arm -L /usr/arm-linux-gnueabi/ ./test

“`

如果一切顺利,你将在终端中看到“Hello, embedded world!”这个输出结果。

四、在VSCode中使用armlinuxgcc编译工具链

虽然在终端中使用工具链可以完成代码编译,但是使用集成开发环境更加方便。在这里,我们将介绍如何在VSCode中使用armlinuxgcc编译工具链。

在VSCode中打开刚刚创建的test文件夹。接着,在左侧菜单中找到“Extensions”,搜索并安装名为“C/C++” 的扩展。安装完成后,按下“Ctrl+Shift+P”打开命令面板,输入“C/C++: Edit Configurations” 并选择此命令。

在弹出的.json文件中输入以下内容:

“`

{

“configurations”: [

{

“name”: “Linux”,

“includePath”: [

“${workspaceFolder}/**”

],

“defines”: [],

“compilerPath”: “/usr/local/bin/arm-linux-gnueabi-gcc”,

“cStandard”: “gnu11”,

“cppStandard”: “gnu++14”,

“intelliSenseMode”: “gcc-arm”,

“browse”: {

“path”: [

“${workspaceFolder}”

],

“limitSymbolsToIncludedHeaders”: true,

“databaseFilename”: “”

}

}

],

“version”: 4

}

“`

保存文件后,按下“Ctrl+Shift+B” 编译代码。

五、

相关问题拓展阅读:

全志a20怎么让mac地址不重复

‘gcc-linaro/arm-linux-gnueabi/bin/ranlib’ 这个目录下找不到这个文件,不能硬链到这个文件 看你这个地址是个相对路径,是不是环境变量没配全

mac arm-linux-gcc的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于mac arm-linux-gcc,Mac下使用armlinuxgcc编译工具链,全志a20怎么让mac地址不重复的信息别忘了在本站进行查找喔。


数据运维技术 » Mac下使用armlinuxgcc编译工具链 (mac arm-linux-gcc)