全编译android源码

2019-04-18  本文已影响0人  坠叶飘香

1. 下载代码

curl https://mirrors.tuna.tsinghua.edu.cn/git/git-repo -o repo
chmod +x repo
export REPO_URL='https://mirrors.tuna.tsinghua.edu.cn/git/git-repo/'
repo init -u https://aosp.tuna.tsinghua.edu.cn/platform/manifest -b android-8.0.0_r4
repo sync -j2

2. 编译

source build/envsetup.sh
lunch aosp_arm64-eng
make -j4

3. 编译过程中遇到的错误

************************************************************
You asked for an OpenJDK based build but your version is
java version "1.8.0_191" Java(TM) SE Runtime Environment (build 1.8.0_191-b12) Java HotSpot(TM) 64-Bit Server VM (build 25.191-b12, mixed mode).
************************************************************
build/core/main.mk:175: error: stop.
16:00:55 ckati failed with: exit status 1
build/core/main.mk:21: recipe for target 'run_soong_ui' failed
make: *** [run_soong_ui] Error 1

#### make failed to build some targets (54 seconds) ####
解决方案:

配置java环境变量
(1) 使用命令sudo vi /etc/profile打开文件,在文件末尾加入下面三句

export JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64
export CLASSPATH=.:$JAVA_HOME/lib:$CLASSPATH
export PATH=$JAVA_HOME/bin:$PATH

(2) 使用下面命令使得修改生效

sudo sudo vi /etc/profile
FAILED: out/host/linux-x86/obj/EXECUTABLES/checkpolicy_intermediates/policy_scan.c 
/bin/bash -c "prebuilts/misc/linux-x86/flex/flex-2.5.39 -oout/host/linux-x86/obj/EXECUTABLES/checkpolicy_intermediates/policy_scan.c external/selinux/checkpolicy/policy_scan.l"
flex-2.5.39: loadlocale.c:130:_nl_intern_locale_data: ?? 'cnt < (sizeof (_nl_value_type_LC_TIME) / sizeof (_nl_value_type_LC_TIME[0]))' ???
Aborted (core dumped)
[  0% 6/78713] Notice file: system/sepolicy/tools/fc_sort/NOTICE -- out/host/linux-x86/obj/NOTICE_FILES/src/bin/fc_sort.txt
ninja: build stopped: subcommand failed.
16:38:23 ninja failed with: exit status 1
build/core/main.mk:21: recipe for target 'run_soong_ui' failed
make: *** [run_soong_ui] Error 1

#### make failed to build some targets (30 seconds) ####
解决方案:
export LC_ALL=C
4 warnings generated.
[ 16% 12983/78708] Copy xml: out/target/product/generic_arm64/system/etc/permissions/android.hardware.ethernet.xml
FAILED: out/target/product/generic_arm64/system/etc/permissions/android.hardware.ethernet.xml 
/bin/bash -c "(xmllint frameworks/native/data/etc/android.hardware.ethernet.xml >/dev/null ) && (mkdir -p out/target/product/generic_arm64/system/etc/permissions/ ) && (rm -f out/target/product/generic_arm64/system/etc/permissions/android.hardware.ethernet.xml ) && (cp frameworks/native/data/etc/android.hardware.ethernet.xml out/target/product/generic_arm64/system/etc/permissions/android.hardware.ethernet.xml )"
/bin/bash: xmllint: command not found
[ 16% 12984/78708] target  C: tcpdump <= external/tcpdump/util.c
ninja: build stopped: subcommand failed.
17:17:14 ninja failed with: exit status 1
build/core/main.mk:21: recipe for target 'run_soong_ui' failed
make: *** [run_soong_ui] Error 1

#### make failed to build some targets (29:33 (mm:ss)) ####
解决方案:
sudo apt-get install  libxml2-utils
上一篇下一篇

猜你喜欢

热点阅读