Fork me on GitHub

4. Building Relevant Bits of CyanogenMod

Решение проблем при сборке 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 и копируем в папку:

  1. $ANDROID_ROOT/device/qcom/sepolicy ( https://github.com/CyanogenMod/android_device_qcom_sepolicy )
  2. $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

  1. добавить две строчки в код:

``` 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
```

После всего этого у меня все собралось без прерывания сборки.

social