Здравствуйте, это мой первый пост на stackoverflow, поэтому, пожалуйста, простите мою наивность. В настоящее время я пытаюсь скомпилировать собственное ядро с включенным LKM. Основная проблема заключается в том, что все руководства и учебные пособия устарели. Я не могу найти ничего, что могло бы помочь или даже направить в правильном направлении.
AVD, используемые для тестирования (Снимок экрана)
Кросс- Компиляторы, которые я пробовал:
1. google toolchain64 (устарело 13 дней go)
2. Linario
3. UberT C
4. Clang
5. android -ndk-r21 набор инструментов
Я работаю над этим уже 10 дней, поэтому любая помощь будет очень признательна.
Последняя попытка 1:
Ядро: wahoo- android -msm-wahoo-4.4
Набор инструментов: g cc -linaro- 7.5.0-2019.12-i686_aarch64- linux -gnu
Команды:
export CROSS_COMPILE=/path to tool chain/
export ARCH=arm64
make clean
make mrproper
make wahoo_defconfig
make menuconfig (to enable LKM)
make -j12
ОШИБКА:
не удается создать образ, не выдает ошибку
Последняя попытка 2:
Ядро: git клон https://android.googlesource.com/kernel/goldfish/ -b android -goldfi sh -4,9-dev набор инструментов: g cc -linaro-7.5.0-2019.12-i686_aarch64- linux -gnu
Команды:
export CROSS_COMPILE=/path to tool chain/
export ARCH=arm64
make clean
make mrproper
make goldfish_defconfig
make menuconfig (to enable LKM)
make -j12
ОШИБКА:
qemu: linux ядро слишком старое для загрузки RAM-диска
РЕДАКТИРОВАТЬ:
Последняя попытка 3:
Ядро: git клон https://android.googlesource.com/kernel/common -b cuttlefi sh -4.4
набор инструментов: g cc -linaro-7.5.0-2019.12-i686_aarch64- linux -gnu
Команды:
export CROSS_COMPILE=/path to tool chain/
export ARCH=arm64
make clean
make mrproper
make cuttlefish_defconfig
make menuconfig (to enable LKM)
make -j12
ОШИБКА:
duke@duke: ~ $ emulator -avd N exus5X2 -kernel
/ home / duke / Downloads / cuttlefish / arch / arm64 / boot / Image
эмулятор: ПРЕДУПРЕЖДЕНИЕ: шифрование отключено
эмулятор: ОШИБКА: AdbHostServer. cpp: 102: невозможно подключиться к демону adb через порт: 5037
queryCoreProfileSupport: интервал подкачки не найден
не удалось создать чертеж
не удалось создать рисунок
не удалось создать рисунок
не удалось создать рисунок
не удалось создать drawable
не удалось создать drawable
не удалось создать drawable
не удалось создать drawable
qemu: linux ядро слишком старое для загрузки оперативного диска
РЕДАКТИРОВАТЬ 2:
Последние попытки 4/5:
Ядра:
git клон https://android.googlesource.com/kernel/common -b cuttlefi sh -4.4
git клон https://android.googlesource.com/kernel/goldfish/ -b android -goldfi sh -4.9-dev
набор инструментов: android -ndk-r21
Команды:
export CROSS_COMPILE=/android-ndk-r21/toolchains/x86_64-4.9/prebuilt/linux- x86_64/bin/x86_64-linux-android-
export ARCH=x86_64
make clean
make mrproper
make x86_64_defconfig
make menuconfig (to enable LKM)
make -j12
emulator -avd MANY -kernel x86/boot/bzImage †
emulator -avd MANY -kernel x86/boot/bzImage -verbose ††
emulator -avd MANY -kernel x86/boot/bzImage -no-snapshot-load -ranchu †††
ОШИБКА: †
Нет ошибок, AVD не удалось загрузить. Я ждал 30 минут
ОШИБКА: ††
эмулятор: не предоставлен файл inpi acpi, используется значение по умолчанию
ОШИБКА: †††
Нет ошибок, AVD НЕ УДАЕТСЯ ЗАГРУЗИТЬ. Я ждал 30 минут