迅爲是基於Ubuntu12.04.2平臺作開發,全部的配置和編譯腳本也是基於此平臺,沒有在其它平臺上測試過。若是你對Linux和Android開發很熟悉,相信你會根據錯誤提示逐步找到緣由並解決,錯誤提示通常是選用的平臺缺乏了某些庫文件或者工具等緣由形成的;建議初學者使用和迅爲一致的平臺。java
Uboot、Kernel以及Android等的編譯環境看似複雜,其實只須要抓住如下四個要點。vim
(1)Uboot、Kernel編譯器的安裝。編譯器在光盤中都有提供,在須要使用的步驟中,會說明編譯器在光盤中的位置。bash
(2)設置環境變量。Uboot、Kernel、QtE、Qtopia編譯器的環境變量設置後,編譯的時候,系統才能找到編譯器。服務器
(3)Android文件系統的編譯器。編譯器須要使用Ubuntu系統自帶的gcc編譯器,可是版本不對,因此須要下降版本。迅爲將這個過程編寫了成幾個簡單的命令,用戶只須要挨個執行命令便可。網絡
(4)庫文件。搭建過程當中會給經過執行簡單的腳本命令來安裝庫文件,複雜的步驟變的簡單有效。ssh
另外,若是用戶想了解編譯環境具體是怎麼搭建起來的,能夠利用提供的腳本文件和命令來學習。工具
兩種搭建編譯環境的方式,一種方法是用戶安裝虛擬機,而後安裝基礎的Ubuntu12.04.2系統,利用迅爲提供工具和詳細的使用步驟,搭建編譯環境;另一種方法是用戶安裝虛擬機,而後直接加載「搭建好的Ubuntu鏡像」,用戶只須要修改一下編譯器的環境變量,就能夠直接用來編譯源碼。學習
如下詳細講解如何搭建編譯環境。測試
須要注意的是,搭建過程當中用到的各種軟件,都須要和手冊提到的版本保持一致,若是使用的是「搭建好的鏡像」,則能夠跳過這一節,可是編譯的時候要針對性的設置一下環境變量。spa
Ubuntu系統須要一些基礎軟件,便於後續使用。
(1)安裝虛擬機「Vmware_Workstaion_wm」
(2)而後使用虛擬機安裝「Ubuntu12.04.2初始系統」。
(3)安裝完成後進入Ubuntu的終端,激活root用戶;
(4)接着登陸root用戶;
(5)虛擬機設置聯網、CPU、內存、USB等;
(6)將Ubuntu數據源地址修改成國內163服務器地址;
(7)使用「apt-get update命令」更新數據源;
(8)在Ubuntu安裝軟件vim,apt-get install vim;
(9)在Ubuntu安裝軟件ssh,apt-get install ssh。
編譯的時候須要用到交叉編譯工具,本小節介紹如何安裝編譯Uboot和Kernel的編譯工具arm-2009q3。
提供的交叉編譯工具是用戶光盤「02_編譯器以及燒寫工具」→「arm交叉編譯器」文件夾中的壓縮包「arm-2009q3.tar.bz2」。
使用SSH工具將交叉編譯工具拷貝到 Ubuntu12.04.2系統的文件夾「usr」-->「local」-->「arm」中,local下默認沒有arm文件夾,能夠新建一個。
使用命令「cd /usr/local/arm/」進入/usr/local/arm文件夾,而後使用解壓命令「tar -vxf arm-2009q3.tar.bz2」解壓壓縮包。
接着修改交叉編譯工具路徑,須要修改環境變量。在Ubuntu命令行中,執行命令「cd /root」和「vim .bashrc」,打開環境變量文件「.bashrc」。
以下圖所示,在「.bashrc」文件中的最後一行添加以下信息:
「export PATH=$PATH:/usr/local/arm/arm-2009q3/bin」
修改完成後保存退出。執行更新環境變量「source .bashrc」的命令。
最後,在Ubuntu命令行中輸入命令「arm」,而後按TAB鍵,若是在命令行中可以看到arm編譯器的信息,就代表交叉編譯工具安裝成功。以下圖所示。
爲了方便用戶,咱們將庫文件和JDK的安裝命令製做成了腳本文件,用戶只要執行兩個腳本就能夠安裝庫文件和JDK。這兩個腳本在用戶光盤「02_編譯器以及燒寫工具」→「tools」文件夾下的壓縮包「Android_JDK.tar.bz2」中。
用戶將壓縮包拷貝到Ubuntu系統中,解壓壓縮包會生成文件夾「Android_JDK」。使用cd命令,進入解壓出來的「Android_JDK」 -->「jdk6」文件夾。以下圖所示,使用命令「./install-sun-java6.sh」運行腳本文件「install-sun-java6.sh」。須要注意的是,這條命令執行完畢可能會耗時15分鐘以上。執行腳本的時,根據提示輸入對應的選擇命令。
前一個腳本運行完畢以後,以下圖所示,進入解壓出來的文件夾「Android_JDK」中,執行命令「./install-devel-packages.sh」運行腳本「install-devel-packages.sh」,安裝庫文件,須要注意的是,這條命令可能會耗時40分鐘以上。上面腳本執行的時候,須要根據提示輸入選擇命令。
上面這個腳本執行完畢的時候,要注意一下是否有些庫文件提示沒有安裝。若是發現有庫文件沒有安裝的狀況,有多是網絡很差或者下載源丟失。這個時候請使用一下更新下載源的命令」apt-get update「,而後再執行一下上面的兩個腳本。
例如,以下圖所示,再次運行「./install-devel-packages.sh」以後,如沒有提示‘沒法安裝的庫和軟件’,那麼代表已經安裝完整了。
最後介紹下降Android編譯器GCC版本的方法。
使用Ubuntu編譯Android的時候須要用到Ubuntu系統自帶的GCC4.4.7編譯器,可是安裝的Ubuntu12.04.2版本,它的GCC版本太高,因此這裏需將GCC編譯器的版本下降到4.4.7。
進入前面解壓的文件夾「Android_JDK」中,找到文本「update_gcc.txt」,打開文本「update_gcc.txt」後會看到裏面有8條命令,這8條命令須要在Ubuntu命令行中依次執行。
使用命令打開「update_gcc.txt」文件,以下圖所示。
在依次執行了這8條命令以後,Ubuntu系統就將gcc的版本下降到4.4.7。使用命令「gcc -v」,能夠看到gcc的版本爲4.4.7了。
在執行這8條命令時,只有第一條命令會耗時10分鐘左右,其它的都會很快完成。須要注意的是,命令必定要依次執行,不能有遺漏。