北岛夜话
原创工业智能控制领域(PLC、单片机/嵌入式、机器人、通信、机器视觉)的技术及经验分享。
文章527 浏览7986200

嵌入式Linux开发日志(4)——交叉编译工具链

目前大多数工业控制系统都是嵌入式系统(少数简单系统采用裸机直接开发)。所谓“嵌入式系统”,是指嵌入到特定硬件内部的、具有特定功能的计算机系统。嵌入式系统一般由实时操作系统(RTOS)+应用软件组成(PLC   本身也是一种嵌入式系统)。常见的实时操作系统有:FreeRTOS、RT-Linux、VxWorks、RT-Thread、SylixOS等。其中,RT-Thread和SylixOS都是纯国产的实时操作系统,前者依靠社区发展,资料非常丰富,我个人非常喜欢,后续会跟大家分享相关的知识。Linux本身并不是实时操作系统,做嵌入式开发,最好采用其实时分支——RT-Linux。嵌入式Linux系统由四大部分组成:交叉编译工具链、BootLoader、内核和根文件系统。今天这篇文章,跟大家介绍下怎么获取和设置交叉编译工具链。

cover.png

由于嵌入式系统是运行在特定的板卡上,而开发环境使则是普通个人电脑。板卡的硬件与个人电脑有很大的不同,为了编译后的程序能在板卡上运行,必须采用交叉编译(可参看之前的文章:嵌入式开发 | 什么是交叉编译(CROSS_COMPILE))。交叉编译由交叉编译工具链完成。

1、工具链的下载与解压缩

交叉编译工具链是一组工具的集合。如果你购买开发板,通常厂家会提供交叉编译工具链,但是版本可能比较老。我们可去下面的网址下载Linaro的工具链:

https://releases.linaro.org/components/toolchain/binaries/

比如我们选择最新的latest-7,单击“arm-linux-gnueabihf”,进入下载页面,单击“gcc-linaro-7.5.0-2019.12-x86_64_arm-linux-gnueabihf.tar.xz”下载工具链,如下图所示:

toolchain.png

下载完成后,进入命令窗口,输入下面的命令解压缩:

tar -xvf gcc-linaro-7.5.0-2019.12-x86_64_arm-linux-gnueabihf.tar.tar

2、设置环境变量

将刚解压缩的工具链的/bin目录添加到环境变量PATH中,假设解压所的路径为:/home/jack/eLinux/toolChain/gcc-linaro-7.5.0-2019.12-x86_64_arm-linux-gnueabihf

则在命令窗口添加代码:

export PTAH=$PATH:/home/jack/eLinux/toolChain/gcc-linaro-7.5.0-2019.12-x86_64_arm-linux-gnueabihf/bin
export ARCH=arm
export CROSS_COMPILE=arm-linux-gnueabihf-

这种方式设置的环境变量是临时的,重启后会丢失。

永久设置环境变量的方法(二选一即可):

①:在/etc/profile.d/中新建脚本,比如linaro_toolchain.sh,在其中添加刚才的代码:

export PTAH=$PATH:/home/jack/eLinux/toolChain/gcc-linaro-7.5.0-2019.12-x86_64_arm-linux-gnueabihf/bin
export ARCH=arm
export CROSS_COMPILE=arm-linux-gnueabihf-

保存脚本文件,为其增加可执行属性:

sudo chmod +x linaro_toolchain.sh

②:打开当前用户根目录下的profile文件(~/.profile),在其中添加刚才的代码:

export PTAH=$PATH:/home/jack/eLinux/toolChain/gcc-linaro-7.5.0-2019.12-x86_64_arm-linux-gnueabihf/bin
export ARCH=arm
export CROSS_COMPILE=arm-linux-gnueabihf-

保存文件并编译或重启。

source ~/.profile

好了,关于交叉编译工具链的下载及设置就先介绍到这里。

下面是嵌入式Linux文章的归档链接:

》》嵌入式Linux文章归档《《
我的书《西门子S7-1200/1500 PLC SCL语言编程 ——从入门到精通》从硬件到软件,比较详细的介绍了SCL语言的编程,感兴趣的话可以扫描下面的二维码查看:

嵌入式Linux开发日志(4)——交叉编译工具链

来源:本站|   大小:401 KB|   下载次数:327次

取消

感谢您的支持,欢迎常来看看!

扫码支持
一点动力,多少随意

打开支付宝扫一扫,即可进行扫码打赏哦

发表评论