[Linux】安裝Linux的交叉編譯工具鏈
1、linux中裝軟件的特點
linux中安裝軟件比windows中復雜。linux中安裝軟件一般有以下幾種方法:
第一種:在線安裝。譬如ubuntu中使用apt-get install vim來安裝vim軟件。
第二種:自己下載安裝包來安裝。這種方式的缺陷就是你不知道你下載的安裝包和你的系統是否匹配。
第三種:最裝逼的一種方式,就是源代碼安裝。
總結:我們安裝交叉編譯工具鏈(arm-linux-gcc)實際采用第二種安裝方式。
2、s5pv210交叉編譯工具鏈版本的選擇
解壓后形式: arm-2009q3(三星官方);解壓前形式:arm-2009q3.tar.bz2
3、交叉編譯工具鏈的安裝步驟
步驟1:打開虛擬機,在/usr/local/下創建/usr/local/arm文件夾【注意需要用sudo才能創建,否則不能創建,如下圖】
步驟2:先將安裝包 arm-2009q3.tar.bz2從Windows中弄到ubuntu中去(此處使用共享文件夾)
步驟3:復制。在ubuntu中進入到/usr/local/arm/所在的目錄, 通過命令sudo cp /mnt/hgfs/linuxshare/arm-2009q3.tar.bz2 ./將arm-2009q3.tar.bz2復制到arm目錄下。
從上圖可以看到,已經復制成功。【注意】這里需要使用sudo權限如上圖操作,且需要特別注意格式,注意點號“.”后面需要有“/”,即用“./”表示當前目錄。
步驟4:解壓。復制結束之后,在/usr/local/arm/目錄下使用tar -jxv命令解壓安轉包,解壓指令如下:tar -jxvf arm-2009q3.tar.bz2。按回車鍵后讓ubnutu自動安裝直到安裝完畢(真正的應用程序安裝在/usr/local/arm/arm-2009q3/bin目錄下),遇到一個問題,使用解壓命令tar -jxvf arm-2009q3.tar.bz2無法解壓成功,怎么辦呢?解決方法:在解壓命令前面加上sudo即可解決。解壓成功的標志是,在arm目錄下可以看到arm-2009q3這個文件夾,如下圖:
到此為止交叉編譯鏈已經安裝成功,因為這是一個綠色軟件,解壓后可以直接使用。真正的應用程序的安裝目錄下(/usr/local/arm/arm-2009q3/bin)
【補充】使用命令:sudo su root 可以進入root權限
步驟5:到真正的應用程序的安裝目錄下(也就是/usr/local/arm/arm-2009q3/bin),進入目錄看到如下:
上面看到的綠色的“arm-none-linux-gnueabi-gcc”便是交叉工具編譯鏈,這是編寫這個交叉工具編譯鏈的創造者起的名字,但是為了方便我們習慣把它縮短一些,統稱叫“arm-linux-gcc”,這也是后面會談到的“為工具鏈創建arm-linux-xxx符號鏈接”
4、安裝后的測試
安裝完之后現在測試一下安裝的交叉工具編譯鏈能不能用。到目錄/usr/local/arm/arm-2009q3/bin,執行一下安裝的編譯鏈
執行方法是:./arm-none-linux-gnueabi-gcc -v
(說明:-v是參數,用來測試所安裝的交叉工具編譯鏈的版本)
執行后可以得到一長串輸出,其中有“gcc version 4.4.1 ”字樣,即表示安裝成功。
5、為工具鏈創建arm-linux-xxx符號鏈接
sudo進入管理員權限后 ln arm-none-linux-gnueabi-addr2line -s arm-linux-addr2line
【注意:上面用ln生成軟連接是需要在管理員權限才可以】,生成的軟連接(好比快捷方式)是左邊藍色一排
,
6、環境變量的意義
環境變量就是操作系統的全局變量。每一個環境變量對操作系統來說都是唯一的,名字和所代表的意義都是唯一的。linux系統可以有很多個環境變量。其中有一部分是linux系統自帶的,還有一些是我們自己來擴充的。我們這里涉及到的一個環境變量是
PATH。PATH這個環境變量是系統自帶的,它的含義就是系統在查找可執行程序時會搜索的路徑范圍。
【注意】需要在root用戶下,在根目錄上使用 echo $PATH 查看路徑
7、將工具鏈導出到環境變量
export PATH=/usr/local/arm/arm-2009q3/bin:$PATH
在一個終端中執行以上命令后,該終端中就可以直接使用arm-linux-gcc了,但是只要關掉這個終端再另外打開一個立馬就不行了。原因是我們本次終端中執行時的操作只是針對本終端,以后再打開的終端並未被執行過這個命令所以沒導出。
解決方案:如果要每次打開終端都可以看到這個環境變量,在~/.bashrc中,添加export PATH=/usr/local/arm/arm-2009q3/bin:$PATH 即可。
注意:我們導出這個環境變量是在當前用戶,如果你登錄時在其他用戶下是沒用的。
【linux中的目錄管理方法】我們習慣在/bin(根目錄的bin)目錄下目錄放置一些【系統自帶的用戶使用】的應用程序,/sbin(根目錄的sbin)目錄下存放的是【系統自帶的系統管理方面】的應用程序。如下兩個截圖分別是/bin和/sbin中的部分截取,只是為了讓大家看清楚linux目錄管理的方法.
那我們裝軟件放在哪里?一般都在/usr目錄下。我們安裝arm-linux-gcc,就在/usr/local/底下創建一個arm文件夾,然后裝到將要安裝的軟件裝在arm里面。之所以起名為arm是因為我們現在做的都是arm開發。