首页 > 其他 > 详细

安装交叉工具链

时间:2021-04-13 23:51:34      阅读:23      评论:0      收藏:0      [点我收藏+]

1. 什么是交叉编译

交叉编译,举例来说就是在x86的PC机上编译ARM程序,然后将ARM程序放到ARM开发板上运行。

2. 如何获何得工具链

从芯片厂商那里获得

3. 设置工具链路径

由于平时开发使用的平台各种各样,所以我喜欢采用如下方法

方法1:

在shell中输入如下命令即可

export PATH=$PATH:/交叉编译器路径
这种方法只对当前终端有效,关闭终端再次打开将会失效,重要重新设置。
为了使用方便,我将这条命令放到一个shell脚本中,每次编译时,均自动配置环境变量。

方法2:

在makefile中,采用全路径引用,如

export CC=/opt/gcc-4.4.4-glibc-2.11.1-multilib-1.0/arm-fsl-linux-gnueabi/bin/arm-fsl-linux-gnueabi
make CROSS_COMPILE=$CC ARCH=arm uImage

测试工具链
打开终端,输入工具链名称,如arm-fsl-linux-gnueabi-gcc,然后回车,能够得到下列信息,说明工具链能正常工作了。

vmuser@Linux-host:~$ arm-fsl-linux-gnueabi-gcc
arm-fsl-linux-gnueabi-gcc: no input files

4. 安装32位兼容库

若输入工具链名称,得到下面结果:

-bash: ./arm-fsl-linux-gnueabi-gcc: 没有那个文件或目录

此时请确认:
在相关的目录下确实存在这个文件;
在终端输入arm-fsl-linux-gnueabi-,按TAB键,能找到arm-fsl-linux-gnueabi-* 系列命令;
如果两个条件都没有问题,则就是工具链不兼容了。这种问题主要发生在64位OS上,原因在于在多数工具链为了适应性,通常以32位发布,而实际系统是64位的,所以不成执行。
解决办法很简单,安装32位兼容库就可以了。

vmuser@Linux-host ~$sudo apt-get install ia32-libs

5. 常用工程目录

我在项目开发时,常用相关目录默为如下

.
├── project				//工程目录
└── toolchain				//工具链目录

安装交叉工具链

原文:https://www.cnblogs.com/hanyli/p/14653203.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!