歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux基礎 >> Linux教程 >> 64位Ubuntu 16.04搭建嵌入式交叉編譯環境arm-linux-gcc過程圖解

64位Ubuntu 16.04搭建嵌入式交叉編譯環境arm-linux-gcc過程圖解

日期:2017/2/28 13:45:36   编辑:Linux教程
64位Ubuntu 16.04搭建嵌入式交叉編譯環境arm-linux-gcc過程圖解,開發裸機環境之前需要先搭建其開發環境,畢竟工欲善其事必先利其器嘛。

安裝步驟

1、准備工具安裝目錄

下載 arm-linux-gcc 4.4.3
下載鏈接 http://www.linuxidc.com/Linux/2011-05/35906.htm

將壓縮包arm-Linux-gcc-4.4.3.tar.gz存放在一個目錄下,這個目錄就是你等會解壓縮的目錄,以後這個目錄就不能隨便刪掉了,我的存放路徑是/home/aldrich/arm,如下圖,記住這個路徑,等會還會用到。

  1. .tar.gz 和.tgz
  2. 解壓:tar zxvf FileName.tar.gz
  3. 壓縮:tar zcvf FileName.tar.gz DirName

2、安裝軟件

使用tar命令:tar zxvf arm-linux-gcc-4.3.2.tgz將software文件夾下的arm-linux-gcc-4.3.2.tgz解壓縮安裝到當前目錄。通過下圖可以看到解壓成功了,並且解壓後的文件存放在了

  1. /home/aldrich/arm/arm-linux-gcc-4.3.2

文件夾下,如下圖所示,這個存放路徑可得記住,如下圖

3、配置系統環境變量

配置環境前先坐下普及:

Ubuntu不同目錄下profile與bashrc的區別

/etc/profile 此文件為系統的每個用戶設置環境信息,當用戶第一次登錄時,該文件被執行,並從/etc/profile.d目錄的配置文件中搜集shell的設置。

/etc/bash.bashrc 為每一個運行bash shell的用戶執行此文件,當bash shell被打開時,該文件被讀取。

~/.bash_profile 每個用戶都可使用該文件輸入專用於自己使用的shell信息,當用戶登錄時,該文件僅僅執行一次,默認情況下,他設置一些環境變量,執行用戶的.bashrc文件。

~/.bashrc 該文件包含專用於你的bash shell的bash信息,當登錄時以及每次打開新的shell時,該文件被讀取。

~/.bash_logout 當每次退出系統(退出bash shell)時,執行該文件。

另外,/etc/profile中設定的變量(全局)的可以作用於任何用戶,而~/.bashrc等中設定的變量(局部)只能繼承/etc/profile中的變量,他們是"父子"關系。

~/.bash_profile 是交互式、login 方式進入 bash 運行的。

~/.bashrc 是交互式 non-login 方式進入 bash 運行的。

通常二者設置大致相同,所以通常前者會調用後者。

接下來配置系統環境變量,把交叉編譯工具鏈的路徑添加到環境變量PATH中去,這樣就可以在任何目錄下使用這些工具。記下上一步中的安裝路徑,使用命令:vim /home/aldrich/.bashrc 編輯.bashrc文件,添加環境變量。

在該文件中最後一行添加:

  1. export PATH=$PATH:/home/aldrich/arm/arm-linux-gcc-4.3.2/bin

這個路徑就是那個bin目錄所在的路徑,可能你的不一樣,按照你實際的目錄填就可以了,如下圖

編寫完保存就好了

4、使環境變量生效

使用命令:source /home/aldrich/.bashrc 使環境變量生效

5、檢查環境變量是否設置成功

在終端上輸入命令 arm-linux 再按Tab鍵,可以看到下圖,說明環境變量設置成功了

6、安裝32位庫兼容包

輸入命令後,出現下面的錯誤提示信息:

  1. /home/aldrich/arm/arm-linux-gcc-4.3.2/bin/arm-linux-gcc:
  2. line 3:
  3. /home/aldrich/arm/arm-linux-gcc-4.3.2/bin/arm-none-linux-gnueabi-gcc:No such file or directory

說是出現這種問題的原因是由於Ubuntu16.04用的是64位的,按以前的解決方法就是使用命令:

sudo apt-get install ia32-libs 裝一些32位的庫

出現上述界面是因為Ubuntu16.04版本已不支持ia32-libs的軟件包,而是使用了lib32ncurses5、lib32z1軟件包做為替代,所以在Ubuntu16.04版本當中應該安裝執行:

  1. sudo apt-get install lib32ncurses5 lib32z1

待安裝完32位的庫之後,再使用命令:arm-linux-gcc -v,這一次就成功了,如下圖

8、交叉編譯工具驗證

編譯一個hello.c文件

  1. #include<stdio.h>
  2. int main()
  3. {
  4. printf("hello world!\n");
  5. }

使用命令:arm-linux-gcc hello.c -o hello 看是否編譯成功

可見成功生成了二進制文件,至此,交叉編譯工具就配置完成了。

Ubuntu 16.04上安裝arm-linux-gcc-4.4.3 http://www.linuxidc.com/Linux/2016-07/133746.htm

Copyright © Linux教程網 All Rights Reserved