小白必看!3步搞定ARM交叉编译环境,附常见坑点解决办法(欢迎交流补充)
想给ARM开发板写程序却不知道怎么搭环境?别慌,今天手把手教你搞定交叉编译工具链,看完就能上手!
一、先搞懂:为啥需要交叉编译?
咱们的电脑大多是x86架构,而开发板多是ARM架构,就像两个人说不同的方言,直接编译的程序跑不起来。交叉编译工具链就是“翻译官”,能让x86电脑编译出ARM设备能看懂的代码。
二、3步快速安装(Ubuntu为例,其他系统可留言问)
1. 更新系统打开终端,先给系统“打个补丁”,避免安装时出错:
|
sudo apt update |
2. 一键装工具链新手直接用系统自带的包管理器,稳!输入:
|
sudo apt install gcc-arm-linux-gnueabihf g++-arm-linux-gnueabihf |
(32位ARM选这个,64位换aarch64-linux-gnu)
3. 验证是否装好敲一句arm-linux-gnueabihf-gcc –version,能看到版本号就成了!
三、踩坑?别急,这些问题我替你试过了
• 报错“command not found”:大致率是没装对或环境变量没生效,试试重启终端,还不行评论区甩报错截图,我来瞅。
• 编译时提示“缺少xxx库”:装个补充包就行:
|
sudo apt install libc6-dev-armhf-cross |
• 想装特定版本:去Linaro官网下载压缩包,解压后把bin目录加到环境变量(不会的评论区喊我,教你一步步弄)。
四、来测试下!
写个简单的hello.c,用交叉编译器编译:
|
arm-linux-gnueabihf-gcc hello.c -o hello_arm |
把hello_arm传到开发板,运行成功就大功告成~
你在搭环境时遇到过啥奇葩问题?用的什么系统?欢迎在评论区分享经验或提问,大家一起填坑!


