本文轉自迅為論壇:http://bbs.topeetboard.com 平臺:iTOP-4412開發板 Uboot、Kernel 以及 Android 的編譯環境看似復雜,用戶只要抓住以下幾個要點就可以 了: 第一:Uboot、Kernel 編譯器。編譯器在光盤中都有提供,在需要使用的步驟中,會說 明編譯器在光盤中的位置。 第二:設置環境變量。Uboot、Kernel 編譯器的環境變量設置后,編譯的時候,系統才 能找到編譯器。 第三:Android 文件系統的編譯器。編譯器需要使用 Ubuntu 系統自帶的 gcc 編譯器, 但是版本不對,所以需要降低版本。迅為將這個過程編寫了成幾個簡單的命令,用戶只需要挨個執行命令就可以了。 第四:庫文件。搭建過程中會給通過執行簡單的腳本命令來安裝庫文件,復雜的步驟變的 簡單有效。 另外,如果用戶想了解編譯環境具體是怎么搭建起來的,可以利用我們提供的腳本文件來 學習。 Android4.0.3編譯環境的兩種搭建方式 迅為電子給用戶提供兩種搭建編譯環境的方式,一種方法是用戶安裝虛擬機,然后安裝基 礎的 Ubuntu12.04.2 系統,利用我們提供工具和詳細的使用步驟,搭建編譯環境;另外一種方法是用戶安裝虛擬機,然后直接加載我們“搭建好的 Ubuntu 鏡像”,用戶只需要修改一下編譯器的環境變量,就可以直接用來編譯源碼。 1. 自己搭建環境 自己安裝虛擬機,安裝 Ubuntu12.04.2 系統,搭建環境。 2. 搭建環境 如何搭建編譯環境,這里需要注意的是,搭建過程中用到的各類軟件,都需要和手冊提到的版本保持一致,如果使用的是“搭建好的鏡像”,則可以跳過這一節,但是編譯的時候要針對性的設置一下環境變量。 3. 安裝基本軟件 首先安裝虛擬機“Vmware_Workstaion_wm”,然后使用虛擬機安裝“Ubuntu12.04.2 初始系統”。 Ubuntu 的安裝方法可以參考 3.2 小節來安裝 Ubuntu12.04.2 原始系統,如下圖所示, Ubuntu 初始系統安裝完成。 輸入密碼“topeet”,登陸 Ubuntu,鍵盤上按“Ctrl+Alt+t”,彈出 Ubuntu 的控制 臺。如下圖所示。 安裝完成后進入 Ubuntu 的終端,激活 root 用戶,具體操作如下。 在 Ubuntu 命令行中,執行命令“sudo passwd root”。 接著在 Ubuntu 的終端輸入安裝時的密碼和新密碼,Ubuntu 系統中密碼默認是隱藏的。 如下圖所示。 接著登錄 root 用戶,具體操作如下。 在 Ubuntu 命令行中,執行命令“su root”。 接著輸入密碼,就可以登陸 root 用戶。 后面所有的操作都需要在 root 用戶下面進行操作,如下圖所示。 虛擬機 VMware-workstation8.0.3 聯網 修改數據源地址,將 Ubuntu 數據源地址修改為國內地址。 更新數據源。 然后在 Ubuntu 安裝軟件 vim 和 ssh,在 Ubuntu 命令行中,執行命令“apt-get install vim”和“apt-get install ssh”。 上面安裝的 ssh 軟件,可以很方便在主機和虛擬機上傳遞文件,也可以通過遠程終端控制 Ubuntu 系統,這里推薦給大家使用。 安裝編譯組件 交叉編譯工具 編譯的時候需要用到交叉編譯工具,我們提供的交叉編譯工具是用戶光盤“02_編譯器以 及燒寫工具”→“arm 交叉編譯器”文件夾中的壓縮包“arm-2009q3.tar.bz2”。 使用 SSH 工具將交叉編譯工具拷貝到 Ubuntu12.04.2 系統的文件夾“usr”-->“local”-->“arm”中,local 下默認沒有 arm文件夾,可以新建一個。如下圖所示。 拷貝編譯器之后如下圖所示。 然后在 Ubuntu 系統中將壓縮包解壓到當前目錄下。 使用命令“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以及降低GCC版本 為了方便用戶,將庫文件和 JDK 的安裝命令制作成了腳本文件,用戶只要執行兩個腳本 就可以安裝庫文件和 JDK。這兩個腳本在用戶光盤“02_編譯器以及燒寫工具”→“tools”文件夾下的壓縮包“Android_JDK.tar.bz2”中,如下圖所示。 用戶將壓縮包拷貝到 Ubuntu 系統中,解壓壓縮包會生成文件夾“Android_JDK”,如 下圖所示。 安裝庫文件和 JDK 使用 cd 命令,進入解壓出來的“Android_JDK” -->“jdk6”文件夾,運行腳本文件 “install-sun-java6.sh”。 需要注意的是,這條命令執行完畢可能會耗時 15 分鐘以上。 如下圖所示,執行“./install-sun-java6.sh”腳本。 執行上面的命令的時候,根據提示輸入“回車”命令。升級完成之后如下圖所示。 進入解壓出來的文件夾“Android_JDK”中運行腳本“install-devel-packages.sh”,安 裝庫文件。在 Ubuntu 命令行中,執行命令“./install-devel-packages.sh”,需要注意的 是,這條命令可能會耗時 40 分鐘以上,如下圖所示。 上面命令執行的時候,需要根據提示輸入“Y”。 然后安裝過程中,還會提示輸入“y”,如下圖所示 如下圖所示,安裝完畢。 這里需要注意的是,上面這個腳本執行完畢的時候,注意一下有些庫文件是不是提示沒有 安裝。如果發現有庫文件沒有安裝,有可能是網絡不好或者下載源丟失。這個時候用戶使用一 下更新下載源的命令”apt-get update“,然后再執行一下上面的兩個腳本。 例如,如下圖所示,再次運行“./install-devel-packages.sh”之后,提示沒有無法安裝 的庫和軟件,那么表明已經安裝完全了。 降低 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 條命令。 例如執行第一條命令。 根據提示輸入“y”,如下圖所示。 其余幾條命令,如下圖所示,執行起來很快。 在執行了這 8 條命令之后,Ubuntu 系統就將 gcc 的版本降低到 4.4.7。 如下圖所示,使用命令“gcc -v”,可以看到 gcc 的版本為 4.4.7 了。 需要注意的是,在執行這 8 條命令時,只有第一條命令會耗時 10 分鐘左右,其它的都會 很快完成,而且命令一定要依次執行,不能有遺漏 |