Не удалось собрать ядро ​​4.9 на Jetson Nano - PullRequest
0 голосов
/ 21 марта 2020

Я пытаюсь собрать ядро ​​4.9 на Jetson Nano, но я получил следующие сообщения об ошибках:

В файле, включенном из ...... / kernel -4.9 / include / asm-generic / bug.h: 13: 0 от ...... / kernel-4.9 / arch / arm64 / include / asm / bug.h: 67 от ...... /kernel-4.9/include/linux/bug.h:4, из ...... / kernel-4.9 / arch / arm64 / include / asm / cmpxchg.h: 21, из ...... / kernel -4.9 / arch / arm64 / include / asm / atomi c .h: 41, из ...... / kernel-4.9 / include / linux / atomi c .h: 4, из .... ../nvidia/drivers/media/platform/tegra/camera/vi/channel.c:13: ...... / nvidia / drivers / media / платформа / tegra / камера / vi / channel. c: В функции 'tegra_channel_s_parm': ...... / kernel-4.9 / include / linux / kernel.h: 838: 48: ошибка: инициализация из несовместимого типа указателя [-Werror = несовместимый тип-указателя]
const typeof (((type *) 0) -> member) * __ mptr = (ptr); \ ^ ...... / nvidia / include / media / mc_common.h: 265: 2: примечание: в расширении макроса 'container_of' container_of (vdev, struct tegra_channel, video) ^ ~~~~~~~~ ~~~ ...... / nvidia / drivers / media / платформа / tegra / camera / vi / channel. c: 2029: 37: примечание: в расширении макроса 'to_tegra_channel' struct tegra_channel * chan = to_tegra_channel ( vfh-> VDEV); ^ ~~~~~~~~~~~~~~~ ...... / kernel-4.9 / include / linux / kernel.h: 838: 48: note: (почти инициализация для 'chan') const typeof (((type *) 0) -> member) * __ mptr = (ptr); \ ^ ...... / nvidia / include / media / mc_common.h: 265: 2: примечание: в расширении макроса 'container_of' container_of (vdev, struct tegra_channel, video) ^ ~~~~~~~~ ~~~ ...... / nvidia / drivers / media / платформа / tegra / camera / vi / channel. c: 2029: 37: примечание: в расширении макроса 'to_tegra_channel' struct tegra_channel * chan = to_tegra_channel ( vfh-> VDEV); ^ ~~~~~~~~~~~~~~~ ...... / nvidia / drivers / media / платформа / tegra / камера / vi / channel. c: В функции 'tegra_channel_g_parm':. ..... / kernel-4.9 / include / linux / kernel.h: 838: 48: ошибка: инициализация из несовместимого типа указателя [-Werror = несовместимый-указатель-типы]
const typeof (((type *) 0) -> участник) * __ mptr = (ptr); \ ^ ...... / nvidia / include / media / mc_common.h: 265: 2: примечание: в расширении макроса 'container_of' container_of (vdev, struct tegra_channel, video) ^ ~~~~~~~~ ~~~ ...... / nvidia / drivers / media / платформа / tegra / camera / vi / channel. c: 2039: 37: примечание: в расширении макроса 'to_tegra_channel' struct tegra_channel * chan = to_tegra_channel ( vfh-> VDEV); ^ ~~~~~~~~~~~~~~~ ...... / kernel-4.9 / include / linux / kernel.h: 838: 48: note: (почти инициализация для 'chan') const typeof (((type *) 0) -> member) * __ mptr = (ptr); \ ^ ...... / nvidia / include / media / mc_common.h: 265: 2: примечание: в расширении макроса 'container_of' container_of (vdev, struct tegra_channel, video) ^ ~~~~~~~~ ~~~ ...... / nvidia / drivers / media / платформа / tegra / camera / vi / channel. c: 2039: 37: примечание: в расширении макроса 'to_tegra_channel' struct tegra_channel chan = to_tegra_channel (vfh-> VDEV); ^ ~~~~~~~~~~~~~~~ Драйверы LD / медиа / платформа / tegra-vivid / встроенный. O CC
драйверы / медиа / платформа / tegra / камера / camera_gpio. o cc1: все предупреждения обрабатываются как ошибки ...... / kernel-4.9 / scripts / Makefile.build: 335: рецепт для целевой 'drivers / media / platform / tegra / camera / vi / channel.o' не выполнен make [7]:
[drivers / media / platform / tegra / camera / vi / channel.o] Ошибка 1 ...... / kernel-4.9 / scripts / Makefile.build: 649: рецепт для целевой «драйверы / медиа / платформа / Tegra / камера / VI» не удалось сделать [6]: [drivers / media / platform / tegra / camera / vi] Ошибка 2 make [6]: Ожидание незавершенных заданий .... CC
drivers / media / platform / tegra / mipical / mipi_cal.o ...... / kernel-4.9 / scripts / Makefile.build: 649: не удалось создать рецепт для целевого драйвера / носителя / платформы / tegra / camera [5]: [драйверы / media / platform / tegra / camera] Ошибка 2 make [5]: Ожидание незавершенных заданий .... CC
драйверы / media / platform / tegra / mipical / vmipi / vmipi. o LD
драйверы / медиа / платформа / tegra / mipical / встроенный .o ...... / kernel-4.9 / scripts / Makefile.build: 649: рецепт для целевых драйверов / медиа / платформы / tegra 'fail make [4]: ​​ [drivers / media / platform / tegra] Ошибка 2 ...... / kernel-4.9 / scripts / Makefile.build: 649: рецепт для целевых' драйверов / носителей / platform 'не удалось сделать [3]: [drivers / media / platform] Ошибка 2 ...... / kernel-4.9 / scripts / Makefile.build: 649: рецепт для целевых «драйверов / носителей» 'fail make [2]: [drivers / media] Ошибка 2 ...... / kernel-4.9 / Makefile: 1104: reci pe для целевого «драйвера» не выполнена make [1]: [drivers] Ошибка 2 make [1]: * Ожидание незавершенных заданий .... make [1]: Выход из каталога '.. ........ / kernel_out 'Makefile: 171: рецепт для целевой' sub-make 'не выполнен make: *** [sub-make] Ошибка 2

Строка 838 в файле ...... / kernel-4.9 / include / linux / kernel.h is:

 837 #define container_of(ptr, type, member) ({          \
 838     const typeof( ((type *)0)->member ) *__mptr = (ptr);    \
 839     (type *)( (char *)__mptr - offsetof(type,member) );})

Мой компилятор gcc / g ++ 7.5.0.

➜  kernel-4.9 gcc --version
gcc (Ubuntu/Linaro 7.5.0-3ubuntu1~18.04) 7.5.0
Copyright (C) 2017 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

➜  kernel-4.9 g++ --version
g++ (Ubuntu/Linaro 7.5.0-3ubuntu1~18.04) 7.5.0
Copyright (C) 2017 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

Кто-нибудь может мне помочь?

Приветствия Пей

...