c/c++语言开发共享关于在linux交叉编译出适用于树莓派ARM架构的可执行程序

一、环境介绍: linux: 树莓派: 二、交叉编译器下载 下载命令:git clone git://github.com/raspberrypi/tools.git 下载解压后是一个tools目录,里面是这样的: 我们进入到arm-bcm2708,看到gcc-linaro-arm-linux-gn …

一、环境介绍:

linux:

关于在linux交叉编译出适用于树莓派ARM架构的可执行程序

树莓派:

关于在linux交叉编译出适用于树莓派ARM架构的可执行程序

二、交叉编译器下载

下载命令:git clone git://github.com/raspberrypi/tools.git

下载解压后是一个tools目录,里面是这样的:

关于在linux交叉编译出适用于树莓派ARM架构的可执行程序

我们进入到arm-bcm2708,看到gcc-linaro-arm-linux-gnueabihf-raspbian / gcc-linaro-arm-linux-gnueabihf-raspbian-x64(32位选前面的,64位选后面的)进入目录,把里面的bin目录加入path环境变量。

可以看到里面内容如下:

关于在linux交叉编译出适用于树莓派ARM架构的可执行程序

三、交叉编译

环境变量加好后,进行交叉编译,和gcc/g++一样使用。

编译:arm-linux-gnueabihf-gcc main.c     

生成:a.out

我们在linux运行一下,发现报错:

关于在linux交叉编译出适用于树莓派ARM架构的可执行程序

再用命令看一下具体的参数:readelf -h a.out

关于在linux交叉编译出适用于树莓派ARM架构的可执行程序

可以看到,架构变成了arm,此时可以移植到树莓派运行。

四,移植

方式:teamview、u盘,filezilla都可以。

移植过去需要给a.out加上可写的权限:chmod +x a.out,再运行即可成功!

 

遇到什么问题欢迎交流,不足之处还请指教,相互学习。

 

本文来自网络收集,不代表计算机技术网立场,如涉及侵权请联系管理员删除。

ctvol管理联系方式QQ:251552304

本文章地址:https://www.ctvol.com/c-cdevelopment/603481.html

(0)
上一篇 2021年5月11日
下一篇 2021年5月11日

精彩推荐