ubunutu20/18/22 編譯開源平板android 5.0代碼相關的問題
hi,粉絲朋友們: 閑魚50塊錢淘到了一個開源平板,注意這個平板是有源碼的,可以進行相關的編譯修改。哈哈哈,馬哥這邊就體驗了一下50塊錢平板是否可以拿來做framework呢? 哈哈,說好就開干了,拿到了相關資料,發(fā)現(xiàn)居然是aosp 5.0的源碼。。。。啥上古神器,不過好歹50塊錢,也有aosp源碼,還有kernel等還是非常值得,這里進行相關源碼的編譯,不過高版本ubuntu編譯這個android 5.0的源碼還是有點坑坑洼洼,記錄如下:
編譯kernel和uboot部分
相關手把手視頻講解如下:
https://www.bilibili.com/video/BV1SF411U73z/
1]
可以看視頻聯(lián)系馬哥哈獲取更多android framework知識
1安裝mkimage
sudo apt-get install u-boot-tools
2 awk regenerate rootfs cpio
11282 blocks 12029 blocks awk: line 2: function strtonum never defined awk: line 2: function strtonum never defined
解決方法: sudo apt-get install gawk
編譯android部分3 hide方法需要,make update-api
直接進行make update-api
4、安裝openjdk7
安裝包:java-7-openjdk-amd64.tar.gz (下載地址鏈接: https://pan.baidu.com/s/1TWr9apWgCaRz6RzFiG33Lw?pwd=d1nq 提取碼: d1nq) 使用方法
1. 拷貝至服務器/個人電腦
2. 解包 mkdir /opt/jdk/ sudo tar -zxvf java-7-openjdk-amd64.tar.gz -C /opt/jdk/
3. 配置編譯環(huán)境
JAVA_HOME=/opt/jdk/java-7-openjdk-amd64
PATH=
$JAVA_HOME
/bin:
$PATH
CLASSPATH=.:
$JAVA_HOME
/lib/dt.jar:
$JAVA_HOME
/lib/tools.jar
export
?JAVA_HOME
export
?PATH
export
?CLASSPATH
$ java -version java version "1.7.0_121" OpenJDK Runtime Environment (IcedTea 2.6.8) (7u121-2.6.8-1ubuntu0.12.04.3) OpenJDK 64-Bit Server VM (build 24.121-b00, mixed mode)
4、出現(xiàn)ld相關錯誤
編譯時候出現(xiàn)如下類是錯誤
libnativehelper/JNIHelp.cpp:310: error: unsupported reloc 43 根據(jù)如上報錯信息看到,根源是由于ld報錯
解決辦法: 把當前系統(tǒng)的ld拷貝到源碼的prebuild下
cp
?/usr/bin/ld.gold?prebuilts/gcc/linux-x86/host/x86_64-linux-glibc2.11-4.6/x86_64-linux/bin/ld
最后上一個成功的截圖: