Я пытаюсь скомпилировать ядро для CyanogenMod 13. Я получаю ошибку
ERROR: modpost: Found 2 section mismatch(es).
To see full details build your kernel with:
'make CONFIG_DEBUG_SECTION_MISMATCH=y'
To build the kernel despite the mismatches, build with:
'make CONFIG_NO_ERROR_ON_MISMATCH=y'
(NOTE: This is not recommended)
я читаю это Вот. Что мне нужно, чтобы скомпилировать мое ядро, используя 4.7.
Как я могу выбрать версию набора инструментов во время сборки CyanogenMod ??
Я считаю, что вам нужно настроить gcc версии 4.7 и использовать переменную CC, чтобы установить его в качестве компилятора. Например. make target CC=/bin/gcc4.7
Спасибо @nopasara и его ценным комментариям.
Поэтому я провел небольшое исследование и обнаружил, что ядро совместимо с arm-eabi tool chain
не arm-linux-androideabi
Набор инструментов. Так вот команда, которую я использовал
export PATH=$PATH:~/android/system/prebuilts/gcc/linux-x86/arm/arm-linux-eabi-4.7/bin/ && export ARCH=arm && export SUBARCH=arm && export CROSS_COMPILE=arm-linux-eabi- && make msm8226_defconfig O=~/android/system/out/target/product/E6790/obj/KERNEL_OBJ
а также
make O=~/android/system/out/target/product/E6790/obj/KERNEL_OBJ zImage -j4
Чтобы сделать с этим Cyanogenmod добавить следующую строку в свой BoardConfig.mk
TARGET_KERNEL_CROSS_COMPILE_PREFIX := arm-eabi-
и либо использовать
export TARGET_LEGACY_GCC_VERSION=4.7
Или отредактируйте ~ / android / system / build / core / combo / TARGET_linux-arm.mk и установите версию в
$(combo_2nd_arch_prefix)TARGET_LEGACY_GCC_VERSION := 4.7