【Linux】自己动手安装交叉编译工具链

一、安装步骤:

步骤1:打开虚拟机,在/usr/local/下创建/usr/local/arm文件夹

步骤2:先将安装包从Windows中弄到linux中去。可以用共享文件夹,也可以  用Samba,也可以cuteftp。

步骤3:解压。tar -jxvf arm-2009q3.tar.bz2

    到此相当于程序已经安装完毕,真正的应用程序安装在  /usr/local/arm/arm-2009q3/bin目录下

 

到此相当于程序已经安装完毕,真正的应用程序安装在/usr/local/arm/arm-2009q3/bin目录下

 

注:linux中的目录管理方法。技术角度来讲,linux中所有目录性质都是一样的,所以技术角度来讲我们把软件安装到哪里都行。但是因为如果胡乱放置,将来程序可能不好找。所以久而久之大家就总结了一个文件放置的一般定义,譬如说/bin目录放置一些系统自带的用户使用的应用程序,/sbin目录下存放的是系统自带的系统管理方面的应用程序。

那我们装软件放在哪里?一般都在/usr目录下。我们安装arm-linux-gcc,就在/usr/local/底下创建一个arm文件夹,然后装到里面。

 

二、安装后的测试

到真正的应用程序的安装目录下(也就是/usr/local/arm/arm-2009q3/bin),去执行arm-linux-gcc -v

执行方法是:./arm-none-linux-gnueabi-gcc -v

执行后可以得到一长串输出,其中有“gcc version 4.4.1”字样,即表示安装成功。

 

我出现问题:我执行./arm-none-linux-gnueabi-gcc -v时,提示bush:./arm-none-linux-gnueabi-gcc -v没有那个文件或目录

原因:是因为62位机与32位不兼容

解决方法:输入 sudo apt-get install lib32bz2-1.0

再执行./arm-none-linux-gnueabi-gcc -v

 

执行后可以得到一长串输出,其中有“gcc version 4.4.1”字样,即表示安装成功。

 

 

三、环境变量

 

以上的测试只能在/usr/local/arm/arm-2009q3/bin这个目录里,去执行arm-none-linux-gnueabi-gcc -v  如果在别的目录下去执行就不行。

 

如何在别的目录下去执行也可以呢?

在终端输入  echo $PATH   

 

再输入 export PATH=/usr/local/arm/arm-2009q3/bin:$PATH

就可以达到目的

(输入echo $PATH 可以看到

,多了第一个)。

 

但是只要关掉这个终端再另外打开一个立马就不行了。原因是我们本次终端中执行时的操作只是针对本终端,以后再打开的终端并未被执行过这个命令所以没导出。

 

如何关掉这个终端再另外打开一个终端页行呢?

解决方案:vi .bashrc

进去之后在最后一行加一句

export PATH=/usr/local/arm/arm-2009q3/bin:$PATH  保存退出即可。

注意:我们导出这个环境变量是在当前用户,如果你登录时在其他用户下是没用的

 

 

 

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章