树莓派4B交叉编译工具链安装

目录

一、安装配置环境介绍:

1、宿主机环境:

2、树莓派系统:

二、获取交叉编译工具链:

1、从GitHub下载【不推荐】:

  1)、下载必要的软件和工具:

  2)、clone交叉工具链:

2、网站下载:

三、安装配置交叉编译工具链【以gcc-linaro-4.9-2016.02-x86_64_arm-linux-gnueabihf为例】:

1、将获取的工具链放到宿主机里的指定目录:

2、设置环境变量:

3、测试安装配置效果:


一、安装配置环境介绍:

1、宿主机环境:

虚拟机Vmware12,Ubuntu 18.04.4 LTS,64位(请注意32位系统和64位系统在安装时存在差异

树莓派4B交叉编译工具链安装_第1张图片

2、树莓派系统:

Linux version 4.19.97-v7l+ (dom@buildbot) (gcc version 4.9.3 (crosstool-NG crosstool-ng-1.22.0-88-g8460611)) #1294 SMP Thu Jan 30 13:21:14 GMT 2020

二、获取交叉编译工具链:

1、从GitHub下载【不推荐】:

  1)、下载必要的软件和工具:

    sudo apt-get install build-essential git

  2)、clone交叉工具链:

    切换到opt目录:cd /opt
    git clone git://github.com/raspberrypi/tools.git
 
    克隆完成之后可以通过pull更新tools
    cd /opt/tools
    git pull origin
 
    实际测试,git方式耗时过长,且容易失败,想办法直接从GitHub下载了安装包,然后放入Ubuntu系统,需先设置安装包权限
    为:chmod 777 files.zip,再解压(权限设置和解压顺序不可调换,不可缺少,不然会导致安装失败,出现问题)。
 
    该目录中存在4个文件夹:
    arm-bcm2708hardfp-linux-gnueabi  
    gcc-linaro-arm-linux-gnueabihf-raspbian
    arm-bcm2708-linux-gnueabi        
    gcc-linaro-arm-linux-gnueabihf-raspbian-x64
    这里使用gcc-linaro-arm-linux-gnueabihf-raspbian 或 gcc-linaro-arm-linux-gnueabihf-raspbian-x64。
    前者对应宿主机32位系统,后者对应宿主机64位系统。git下来的是4.8.3版本。
 
    更深入了解交叉编译工具链,为什么以及如何选用,看这个链接(大神笔记,介绍得非常详细深入,极力推荐之):
    http://crifan.com/files/doc/docbook/cross_compile/release/html/cross_compile.html
 

2、网站下载:

    比较常用的是linaro系列,下载地址:http://releases.linaro.org/components/toolchain/binaries/

    实际下载也很缓慢,但比git好多了。

    这里提供一个4.9.4版本的gcc工具链(文末),已安装测试,编译运行程序没问题。

    其它有的貌似CSDN上都已经有了。

    根据树莓派内核编译所有的交叉工具链版本,推荐使用4.9.3以上版本。

三、安装配置交叉编译工具链【以gcc-linaro-4.9-2016.02-x86_64_arm-linux-gnueabihf为例】:

1、将获取的工具链放到宿主机里的指定目录:

     1)、对于在windows中下载,需要再放入Linux宿主机系统的,可以使用SFTP进行文件传输(推荐,简单方便),

           参考教程:https://www.yahboom.com/build.html?id=2631&cid=308

           当然也可以去配置samba,映射虚拟磁盘方式,balabala.....

    2)、将文件移动到/opt位置,并切换到该路径:cd /opt

    3)、执行权限变更操作(不然后面的使用会有问题):chmod 777 gcc-linaro-4.9.4-2016.02-x86_64_arm-linux-gnueabihf.tar

    4)、解压文件到当前目录:tar –zxvf gcc-linaro-4.9.4-2016.02-x86_64_arm-linux-gnueabihf.tar

2、设置环境变量:

   1)、打开用户环境变量文件:sudo gedit ~/.bashrc

   2)、在打开的文件末尾增加语句:export PATH=$PATH:/opt/gcc-linaro-4.9-2016.02-x86_64_arm-linux-gnueabihf/bin

树莓派4B交叉编译工具链安装_第2张图片

   3)、保存并关闭;

   4)、执行source ~/.bashrc,让环境变量生效(或者注销或重启系统,以重启加载用户环境变量文件);

3、测试安装配置效果:

   1)、执行:arm-linux-gnueabihf-gcc -v,这时应该可以看到交叉编译链的信息:树莓派4B交叉编译工具链安装_第3张图片

   2)、宿主机上编写并编译测试程序:

#include 

int main(int argc, char const *argv[])
{	
	printf("Hello World!\n");

	return 0;
}

执行:arm-linux-gnueabihf-gcc main.c,然后将生成的a.out文件放到树莓派中去执行:

至此完结。其实和之前版本的树莓派差不多,就算是做一个笔记总结吧。唯一麻烦一点的是交叉编译工具链的获取。

 

你可能感兴趣的:(树莓派,嵌入式Linux)