Решение проблем при сборке hybris-boot.img и hybris-recovery.img
- для конфигурирования и сборки проделайте следующие команды:
Чтобы зайти в Ubuntu Chroot:
bash
MER_SDK $
ubu-chroot -r $MER_ROOT/sdks/ubuntu
HABUILD_SDK $
hadk
source build/envsetup.sh
export USE_CCACHE=1
breakfast $DEVICE
make -j4 hybris-hal
The relevant output bits will be in out/target/product/$DEVICE/, in particular:
- hybris-boot.img: Kernel and initrd
- hybris-recovery.img: Recovery boot image
- system/ and root/: HAL system libraries and binaries
Если при выполнении make -j4 hybris-hal выходят ошибки, то нужно заново проделать команды конфигурирования, а уже потом сборки.
По мере компиляции у меня выходили ошибки по некоторым модулям, типа несоответствие путей/файлов указаных в файлах сборки.
Я находил в https://github.com/CyanogenMod нужные модули, затем делал git clone и переходил на нужную мне ветку, в моем случае это cm-13.0, модули были следующие:
Ошибка:
device/asus/msm8916-common/BoardConfigCommon.mk:163: device/qcom/sepolicy/sepolicy.mk: No such file or directorymake: *** No rule to make target `device/qcom/sepolicy/sepolicy.mk'. Stop. ~/to/mer/android/droid/prebuilts/gcc/linux-x86/aarch64/aarch64-linux-android-4.9
Решение:
берем ветку cm-13.0 и копируем в папку:
- $ANDROID_ROOT/device/qcom/sepolicy ( https://github.com/CyanogenMod/android_device_qcom_sepolicy )
- $ANDROID_ROOT/device/qcom/ ( https://github.com/CyanogenMod/android_device_qcom_common )
скопировать папку $ANDROID_ROOT/prebuilts/gcc/linux-x86/aarch64
https://github.com/CyanogenMod/android_external_protobuf git checkout staging/cm-14.0 заменяю в папке $ANDROID_ROOT/external/protobuf
- добавить две строчки в код:
``` From 3581f6c70013f256b46e1a5f1ce3353cedb4ee65 Mon Sep 17 00:00:00 2001 From: Ricardo Salveti de Araujo ricardo.salveti@canonical.com Date: Fri, 28 Jun 2013 03:52:43 -0300 Subject: [PATCH] _system_properties.h: adding PROP_MSG_GETPROP and PROP_MSG_LISTPROP Change-Id: I8d586ad20b4e23b5063a745960c7f5a0fdb31283 Signed-off-by: Sergio Schvezov sergio.schvezov@canonical.com Signed-off-by: Ricardo Salveti de Araujo ricardo.salveti@canonical.com --- libc/include/sys/_system_properties.h | 2 ++ 1 file changed, 2 insertions(+) diff --git a/libc/include/sys/_system_properties.h b/libc/include/sys/_system_properties.h index 0a842bd..ecfb3ac 100644 --- a/libc/include/sys/_system_properties.h +++ b/libc/include/sys/_system_properties.h @@ -58,6 +58,8 @@ struct prop_msg };
#define PROP_MSG_SETPROP 1
+#define PROP_MSG_GETPROP 2
+#define PROP_MSG_LISTPROP 3
```
После всего этого у меня все собралось без прерывания сборки.