Android教程網
  1. 首頁
  2. Android 技術
  3. Android 手機
  4. Android 系統教程
  5. Android 游戲
 Android教程網 >> Android系統教程 >> Android開發教程 >> 在Ubuntu上編譯 emulat Android avd內核源代碼(Linux Kernel)

在Ubuntu上編譯 emulat Android avd內核源代碼(Linux Kernel)

編輯:Android開發教程

因為我沒有真機的環境  所以需要在模擬器中進行模擬進行,所以要下載支持模擬器的源代碼版本,而goldfish這個源代碼版本就是專門為模擬器環境而提供的。

The goldfish project contains the kernel sources for the emulated platforms.

一、首先,到

git clone https://android.googlesource.com/kernel/goldfish.git下載Linux Kernel for Android emulator源代碼。

1、使用GIT工具下載,執行以下命令:

USER-NAME@MACHINE-NAME:~/$ git clone https://android.googlesource.com/kernel/goldfish.git

同樣是經過漫長的等待後,在home目錄下有一個goldfish目錄,Linux內核代碼就在這裡了。

2、下載完成後,可以查看下載的內核代碼版本:

USER-NAME@MACHINE-NAME:~$ cd  goldfish

USER-NAME@MACHINE-NAME:~/goldfish$ ls -a

.  ..  .git

3、 .git include 內核源代碼,現在我們需要適用於模擬器用的內核,因此,我們需要checkout goldfish版本:

USER-NAME@MACHINE-NAME:~/goldfish$ git branch -a

* master

remotes/origin/HEAD -> origin/master

remotes/origin/android-goldfish-2.6.29

remotes/origin/android-goldfish-3.4

remotes/origin/linux-goldfish-3.0-wip

remotes/origin/master

選擇remotes/origin/android-goldfish-3.4:

USER-NAME@MACHINE-NAME:~/my_android/kernel/goldfish$ git checkout remotes/origin/android-goldfish-3.4

二、編譯內核代碼。

1、導出交叉編譯工具目錄到$PATH環境變量中去:

USER-NAME@MACHINE-NAME:~/my_android/kernel/goldfish$

export ARCH=arm

export SUBARCH=arm

export PATH=$PATH:/home/v0idp0int/tools/android-ndk-r9c/toolchains/arm-linux-androideabi-4.6/prebuilt/linux-x86/bin

export CROSS_COMPILE=arm-linux-androideabi-

2、現在是要得到android的內核編譯參數的配置文件的時候了,該文件需要從已經安裝好的android的模擬器

中得到才行。所以安裝android的sdk也是必須的,

首先啟動android模擬器,然後通過adb得到模擬器中提供的內核配置文件:

USER-NAME@MACHINE-NAME:emulator &

USER-NAME@MACHINE-NAME:adb pull /proc/config.gz .

這時候adb工具會連接模擬器,並從它裡面下載一個叫做config.gz的文件到你的當前目錄下。

把它拷貝到你的kernel/goldfish目錄:

USER-NAME@MACHINE-NAME:cd ~/my_android/kernel/goldfish

USER-NAME@MACHINE-NAME:cp ~/config.gz

解壓縮該文件,並重命名為.config,這一步做了就可以跳過make menuconfig之類的內核參數設置

動作了。

USER-NAME@MACHINE-NAME:gunzip config.gz

USER-NAME@MACHINE-NAME:mv config .config

若是重新編譯一個模擬器的內核版本的話,使用命令make goldfish_defconfig 或者make goldfish_armv7_defconfig產生的.config來編譯內核。

  1. 上一頁:
  2. 下一頁:
熱門文章
閱讀排行版
Copyright © Android教程網 All Rights Reserved