LINUX.ORG.RU

Сборка ядра Linux для Android.

 , ,


0

1

Всем ку, короче. Пытаюсь скомпилировать ядро на Clang для Андроид, и выдает ошибки при make: /usr/bin/as: нераспознанный параметр -EL clang-12: error assembler command failed with exit code 1 Затем ../arch/arm64/Makefile:194: vdso prepare, ошибка 2 ../arch/arm64/kernel/vdso/makefile:54 (arch/arm64/kernel/vdso/gettimeofday.o),ошибка 1.

Не думайте что я фигнёй маюсь/ захотелось просто, времени много а скучно.


Все файлы смотрел, ничего необычного не увидел . Может вы увидите, я просто слепо косоглаз.

Brothe
() автор топика

../arch/arm64/Makefile:194

arm64

/usr/bin/as: нераспознанный параметр

У меня закрадывается подозрение, что твой clang не понял, под какую платформу он должен собирать.

apt_install_lrzsz ★★★
()
Ответ на: комментарий от Brothe

По инструкции

CC=clang (must be passed directly to make) CROSS_COMPILE=aarch64-linux-gnu-

ты переменные окружения командной оболочки точно не забыл настроить?

apt_install_lrzsz ★★★
()
Ответ на: комментарий от apt_install_lrzsz

Не забыл, попробовал снова так же.

Brothe
() автор топика

гугловское ядро бери а не ванильное

slapin ★★★★★
()

Но вообще андроид тебя в сборке ядра не ограничивает - не хочешь шлангом собирать, собирай gcc. От ядра там внутри зависит только bionic, для него надо хедеры собрать по инструкции и все. Единственное - если есть бинарные модули ядра, то собирать надо тем же самым тулчейном что и эти модули. Но такое встречается достаточно редко. clang из андроида который линуксовые бинари собирает ABI-совместим c gcc, а андроидный, который для таргета бинари собирает - совместим лишь частично.

slapin ★★★★★
()
Ответ на: комментарий от One

Он все еще нужен для сборок загрузчиков, эмбедки и тп, так что его пока не дропнули. Там еще есть gcc-4.9 для barebone (arm-eabi), он даже не deprecated. Так же он нужен шлангу для сборки ядра, так как он не всегда может что-то адекватно сделать и фоллбачится (но это только на старых гугловских ядрах).

slapin ★★★★★
()

Вроде бы все пошло. Видимо не указал путь к тулчейну, забыл Подправил путь PATH=«$HOME/toolchains/proton-clang/bin:$PATH» Изменил на PATH=«/home/developer/silont-clang/bin:$PATH» И все пошло. Спасибо за догадки.

Brothe
() автор топика
Ответ на: комментарий от Brothe

Но нарисовалась уж другая проблема. ../net/mac80211/tx.c:823:20: error: no member named ‘mntr_flags’ in ’union ieee80211_sub_if_data::(unnamed at ../net/mac80211/ieee80211_i.h:927:2)

Brothe
() автор топика
Последнее исправление: Brothe (всего исправлений: 1)
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.