Rayeager PX2的源碼 采用目前最新的Android 4.4.2_r1系統,系統編譯環境搭建參考本章相關章節,請開發板用戶尤其注意,PX2的編譯與固件燒寫等使用方法。 Rayeager 提供的Android源碼是在Google原生Android的基礎上加入PX2平臺相關的優化后整合出來的。 Google Android源碼的獲取、編譯,在谷歌官網上有比較詳細的介紹,開發板用戶可以直接參考谷歌官網的相關說明,搭建系統環境,獲取和編譯代碼。 谷歌官網關于源碼下載、編譯的地址: https://source.android.com/source/building.html(需翻墻) 【為了方便國內同學,小編復制了原文內容: Downloading and Building The Android build is routinely tested in-house on recent versions of Ubuntu LTS (14.04), but most distributions should have the required build tools available. We welcome reports of successes or failures on other distributions. Before you download and build the Android source, ensure your system meets the following requirements: A Linux or Mac system. It is also possible to build Android in a virtual machine on unsupported systems such as Windows. If you are running Linux in a virtual machine, you need at least 16GB of RAM/swap and 50GB or more of disk space in order to build the Android tree. See disk size requirements below. A 64-bit environment is required for Gingerbread (2.3.x) and newer versions, including the master branch. You can compile older versions on 32-bit systems. At least 50GB of free disk space for a checkout, 100GB for a single build, and 150GB or more for multiple builds. If you employ ccache, you will need even more space. Python 2.6 -- 2.7, which you can download from python.org. GNU Make 3.81 -- 3.82, which you can download from gnu.org, JDK 7 to build the master branch of Android in the Android Open Source Project (AOSP); JDK 6 to build Gingerbread through KitKat; JDK 5 for Cupcake through Froyo. See Initializing a Build Environment for installation instructions by operating system. Git 1.7 or newer. You can find it at git-scm.com.】 對于Rayeager提供的Android代碼,請參考《PX2開發板開源代碼獲取》中的描述獲取。 下載、編譯Android源碼,需要滿足如下基本要求: 一臺Linux或Mac主機。或者,window系統或其它OS中安裝虛擬機也可以。如果在虛擬機中運行Linux,至少需要16G交換分區空間,30G或更多的磁盤空間來編譯Android。 編譯Gingerbread (2.3.x)或更新系統版本,需要64位系統;2.3之前的系統可以使用32位系統編譯。 Android源碼大小接近8.5G,單次編譯需要約30G磁盤空間,完整編譯需要100G或者更多。 Python 2.6或更新版本,可從python.org網站下載安裝。 GNU Make 3.81或更新,可從gnu.org網站下載安裝。 Git 1.7或更新。 谷歌推薦使用Ubuntu系統。Ubuntu 12.04系統,安裝完后,可以查看如下版本信息: $ lsb_release -a No LSB modules are available. Distributor ID: Ubuntu Description: Ubuntu 12.04.3 LTS Release: 12.04 Codename: precise 如果發現按照Google官網上的指南安裝JDK不成功,可以按照下面的說明手動安裝: 從Oracle官網去下載jdk: http://www.oracle.com/java ->Downloads->Java for developers->Download Java SE 6 Update 45.(jdk-6u45-linux-x64.bin) 這里推薦使用1.6.0_45版本的JDK 使用如下命令安裝jdk: $ mv jdk-6u45-linux-x64.bin /user/local $ chmod a+x jdk-6u45-linux-x64.bin $ ./jdk-6u45-linux-x64.bin 安裝完JDK后,將jdk路徑加入到系統環境變量/etc/profile中: JAVA_HOME=/usr/local/jdk1.6.0_45/ CLASSPATH=.JAVA_HOME/lib/tools.jar PATH=$JAVA_HOME/binPATH export JAVA_HOME CLASSPATH PATH 保存之后,可以source /etc/profile,然后查看jdk版本: java -version 系統編譯步驟: 1,初始化系統編譯環境 使用如下命令: $ source build/envsetup.sh 或 $ . build/envsetup.sh 2,編譯代碼 直接在工程根目錄下執行make即可,可用-j參數指定多線程編譯,加快編譯速度。 先編譯產品kernel,見如下命令: $ cd kernel $ make rkpx2_4.4_lcd_defconfig //支持屏幕的內核鏡像 $ make kernel.img 如果要編譯帶VGA功能的內核鏡像,請配置 $ make rkpx2_4.4_vga_defconfig 在kerne/目錄下生成kernel.img 上面的兩個defconfig文件可以通過make help命令查看 然后編譯android: $ cd ../ $ make -j4 3,生成固件 編譯完成后,可執行mkimage.sh腳本生成固件。 $ ./mkimage.sh 固件生成目錄:rockdev/Image-rkpx2/,生成 boot.img ,misc.img,recovery.img,system.img 4,uboot的編譯 在工程目錄下的 $ cd u-boot $ make rkpx2 在目錄下生成RKPX2Loader_miniall.bin和uboot.img |