Linux基础(交叉工具链)

Posted 秘籍酷

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Linux基础(交叉工具链)相关的知识,希望对你有一定的参考价值。

有些时候,我们用习惯了arm-linux-gcc作为编译ARM系统软件的工具,但并不知道其名称来源,慢慢地就会以为这样的工具天生就有的,直到有一天用到arm-linux-ranlib发现咦!系统爆粗了!怎么回事?来听听北理珠学长关国源的讲解。


最近在做一个智能家居的项目,可是在移植CGIC库的时候,发现编译库的时候出现了找不到一些交叉编译工具命令:


Linux基础(交叉工具链)

显然系统说找不到arm-linux-ranlib编译命令,但是我的ubuntu已经成功移植了ARM交叉编译工具链,为什么说找不到的呢?该如何解决?

 

在确认自己的ubuntu已经成功移植过工具链的前提下,这种情况就是没有进行软连接,接下来你要做的是找到该编译命令,并且进行软连接。

 

第一步:在Ubuntu中,找到工具链的安装路径:

Linux基础(交叉工具链)

那么我们就知道工具链被安装在/usr/local/arm/arm-2009q3/bin/这个目录下。

 

第二步,进去这个目录,看看里面有什么鬼!!

Linux基础(交叉工具链)

显然看到一堆交叉编译命令在这里,而且并没有看到arm-linux-ranlib这条命令,但是能够看到有arm-none-linux-gnueabi-ranlib这条命令,所以要进行软连接。

 

第三步:软连接,通过输入

#sudo ln -s arm-none-linux-gnueabi-ranlib arm-linux-ranlib 就可以链接处命令arm-linux-ranlib啦!

Linux基础(交叉工具链)

其实软连接类似于windows的快捷方式,例如ln -s a b,

a 就是源文件或者目录,b是链接文件名或者目录(不存在于当前目录中),其作用是当进入b目录,实际上是链接进入了a目录,无论是文件链接,还是目录链接,都管用!

Linux基础(交叉工具链) 

Linux基础(交叉工具链)

Linux基础(交叉工具链)
Linux基础(交叉工具链)

以上是关于Linux基础(交叉工具链)的主要内容,如果未能解决你的问题,请参考以下文章

CGO基础

CGO基础

LINUX交叉编译工具链和GCC是啥关系啊

Linux下获取arm的交叉编译工具链

arm交叉编译工具链下载

如何使Linux在交叉编译工具安装配置并立即生效