android原始碼編譯常見問題

2021-06-22 08:20:38 字數 2737 閱讀 4071

android原始碼編譯常見問題

編譯過程:

(在ubuntu 11.04

64位機器上編譯

) 1. source build/envsetup.sh  //初始化與環境envsetup.sh指令碼

初始化完成,顯示如下

including device/samsung/maguro/vendorsetup.sh

including device/samsung/tuna/vendorsetup.sh

including device/ti/panda/vendorsetup.sh

including sdk/bash_completion/adb.bash 

2. lunch full-eng   //選擇的目標

****************************************====

platform_version_codename=rel

platform_version=4.0.1

target_product=full

target_build_variant=eng

target_build_type=release

target_arch=arm

target_arch_variant=armv7-a

host_arch=x86

host_os=linux

host_build_type=release

build_id=itl41d

****************************************====

//建立與一切使。gnu的make -jn引數可以並行處理任務,它是共同使用的任務數,

//n的1倍和2倍之間是被用於建立計算機硬體執行緒數量。例如在e5520雙機(2個cpu,

//每個cpu 4核,每核心2執行緒),最快的構建與命令之間的j16和 -j32。

3. make -j4   

編譯完成

target system fs image: out/target/product/generic/obj/packaging/systemimage_intermediates/system.img

install system fs image: out/target/product/generic/system.img 

編譯sdk

1.source build/envsetup.sh 初始化構建環境

2.lunch sdk-eng 選擇目標

3.make sdk

編譯成功,在out/host/linux-x86/sdk/下生成檔案

package sdk: out/host/linux-x86/sdk/android-sdk_eng.root_linux-x86.zip

如果木有許可權檢視該目錄,那麼目錄下面為顯示為空,但通過root終端可以看到得。

out/host/linux-x86/sdk/ 新增如下許可權,就可以看到編譯完成得sdk了。

chmod 777 * -r

常見錯誤:

1./bin/bash: bison: 未找到命令

解決方法:sudo apt-get install bison

2. /bin/bash: flex: 未找到命令

解決方法:sudo apt-get install bison flex

3.system/core/gpttool/gpttool.c:24:18: fatal error: zlib.h: 沒有那個檔案或目錄

compilation terminated.

make: *** [out/host/linux-x86/obj/executables/gpttool_intermediates/gpttool.o] 錯誤 1

make: *** 正在等待未完成的任務....

解決方法: sudo apt-get install zlib-devel

4.host executable: bb2sym (out/host/linux-x86/obj/executables/bb2sym_intermediates/bb2sym)

/usr/bin/ld: cannot find -lncurses

collect2: ld returned 1 exit status

make: *** [out/host/linux-x86/obj/executables/adb_intermediates/adb] 錯誤 1

解決方法:sudo apt-get install libncurses5-dev

5.development/tools/emulator/opengl/host/libs/translator/glcommon/../include/egl/eglplatform.h:85:22: fatal error: x11/xlib.h: 沒有那個檔案或目錄

compilation terminated.

make: *** [out/host/linux-x86/obj/executables/********cm_intermediates/********cm.o] 錯誤 1

解決方法:sudo apt-get install libx11-dev

6.fatal error: gl/glx.h: 沒有那個檔案或目錄

解決方法:sudo apt-get install libgl1-mesa-dev

7. gperf: not found

解決方法:sudo apt-get install gperf

更新自己編譯android原始碼遇到的問題

1 bin bash bison 未找到命令 安裝bison sudo apt get install bison 2 借鑑前輩經驗先安裝了一些工具包參考部落格 前輩的部落格 寫的好整齊 總結一下安裝 sudo apt get install gnupg flex bison gperf libsd...

Debian編譯Android原始碼

筆記本 intel i3 ram 4g linux debian 8.1.0 amd64 xfce cd 1.iso android 4.2.2android官方推薦使用ubuntu編譯原始碼,但我試了ubuntu 12.04 ubuntu 14.04,結果都在安裝好所需檔案重啟電腦後,系統就出莫名...

ubuntu編譯android原始碼

1.首先為安裝ubuntu系統,大家可以參考以下鏈結 建議大家把 根目錄分70g以上 3.安裝編譯必備的工具 清華大學映象庫 5.編譯過程 6.用到的命令 卡住不動 ctrl z 清除make資訊 make clobber 開始編譯 build envsetup.sh 選擇版本 lunch 開始編譯...