最近需要Ubuntu20.04上编写C,需要编译放到arm开发板上运行,这篇博客记录了我的安装过程,分析我在这过程中遇到的问题解决办法。

目录

下载、安装

环境变量配置

问题解决

测试


下载、安装

命令下载

这样下载最新版的还会自动安装好。但是我用这个方法失败了,网上大多数都是用压缩包安装

sudo apt-get install gcc-arm-linux-gnueabihf

网盘下载

链接:https://pan.baidu.com/s/1TEezXgCC2akMP3xKv0sE8g 
提取码:4231

将下载的包提取到/usr/local/bin

环境变量配置

sudo vim ~/.bashrc
sudo gedit ~/.bashrc

在末尾添加两行,保持退出,注意arm/5.4.0/usr/bin是我自己的路径,每个人下载的不同交叉编译工具可能不一样。

export PATH=$PATH:/usr/local/bin/arm/5.4.0/usr/bin
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/arm/5.4.0/usr/lib

使用source命令重新加载生效该配置文件

source ~/.bashrc

测试

查看arm-linux-gcc版本

arm-linux-gcc -v

编译一个c文件,file查看编译后的文件,可以看到 ELE 32-bit ...ARM。

问题解决

bin/.arm-none-linux-gnueabi-gcc: not found

当做完环境变量配置以后,输出arm-linux-gcc -v 查看出现xxxx路径bin/.arm-none-linux-gnueabi-gcc: not found那么你的机器还需要装一个32位的库,因为ubuntu20.04是64位的,而交叉编译工具是32位程序。

sudo apt-get install libc6-i386

error while loading shared libraries: libmpfr.so.4: cannot open shared object file: No such file or directory

尝试去编译出现以下错误

tanaocheng@tanaocheng-TUF:~/Course_design$ arm-linux-gcc -o arm9x9 c9x9.c
/usr/local/bin/arm/5.4.0/usr/bin/../libexec/gcc/arm-none-linux-gnueabi/5.4.0/cc1: error while loading shared libraries: libmpfr.so.4: cannot open shared object file: No such file or directory

创建符号链接

$ sudo ln -s /usr/lib/x86_64-linux-gnu/libmpfr.so.6 /usr/lib/x86_64-linux-gnu/libmpfr.so.4
Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐