JetPack 6.1, host:ubunt22.04
sudo make modules ARCH=arm64 CROSS_COMPILE=/home/wel/l4t-gcc/aarch64–glibc–stable-2022.08-1/bin/aarch64-buildroot-linux-gnu- KERNEL_HEADERS=/home/wel/nvidia/Linux_for_Tegra/source/kernel/kernel-jammy-src
报如下错误,这是什么原因引起:
make[1]: 进入目录“/home/wel/nvidia/Linux_for_Tegra/source/kernel/kernel-jammy-src”
CC [M] /home/wel/nvidia/Linux_for_Tegra/source/nvidia-oot/drivers/spi/spi-aurix-tegra.o
CC [M] /home/wel/nvidia/Linux_for_Tegra/source/nvidia-oot/drivers/scsi/ufs/ufs-tegra-common.o
CC [M] /home/wel/nvidia/Linux_for_Tegra/source/nvidia-oot/drivers/thermal/pex9749-thermal.o
CC [M] /home/wel/nvidia/Linux_for_Tegra/source/nvidia-oot/drivers/misc/nvsciipc/nvsciipc.o
CC [M] /home/wel/nvidia/Linux_for_Tegra/source/nvidia-oot/drivers/soc/tegra/fuse/kfuse.o
CC [M] /home/wel/nvidia/Linux_for_Tegra/source/nvidia-oot/drivers/scsi/ufs/ufs-provision-dummy.o
CC [M] /home/wel/nvidia/Linux_for_Tegra/source/nvidia-oot/drivers/watchdog/softdog-platform.o
CC [M] /home/wel/nvidia/Linux_for_Tegra/source/nvidia-oot/drivers/watchdog/watchdog-tegra-t18x.o
In file included from ./include/linux/module.h:22,
from /home/wel/nvidia/Linux_for_Tegra/source/nvidia-oot/drivers/misc/nvsciipc/nvsciipc.c:13:
./include/linux/module.h:183:43: 错误: expected ‘,’ or ‘;’ before ‘KBUILD_MODFILE’
183 | define MODULE_FILE MODULE_INFO(file, KBUILD_MODFILE);
| ^~~~~~~~~~~~~~
./include/linux/moduleparam.h:26:61: 附注: in definition of macro ‘__MODULE_INFO’
26 | = __MODULE_INFO_PREFIX __stringify(tag) “=” info
| ^~~~
./include/linux/module.h:183:25: 附注: in expansion of macro ‘MODULE_INFO’
183 | define MODULE_FILE MODULE_INFO(file, KBUILD_MODFILE);
| ^~~~~~~~~~~
./include/linux/module.h:230:34: 附注: in expansion of macro ‘MODULE_FILE’
230 | define MODULE_LICENSE(_license) MODULE_FILE MODULE_INFO(license, _license)
| ^~~~~~~~~~~
/home/wel/nvidia/Linux_for_Tegra/source/nvidia-oot/drivers/misc/nvsciipc/nvsciipc.c:865:1: 附注: in expansion of macro ‘MODULE_LICENSE’
865 | MODULE_LICENSE(“GPL v2”);
Hi,
It looks like it’s built with toolchain of x86 host PC. Please try the steps:
No data from Joystick Logitech-f710 - #10 by DaneLLL
之前的错误没有,但出现了下面问题:
LD [M] /home/wel/nvidia/Linux_for_Tegra/source/nvgpu/drivers/gpu/nvgpu/nvgpu.o
MODPOST /home/wel/nvidia/Linux_for_Tegra/source/nvgpu/drivers/gpu/nvgpu/Module.symvers
CC [M] /home/wel/nvidia/Linux_for_Tegra/source/nvgpu/drivers/gpu/nvgpu/nvgpu.mod.o
LD [M] /home/wel/nvidia/Linux_for_Tegra/source/nvgpu/drivers/gpu/nvgpu/nvgpu.ko
make[1]: 离开目录“/home/wel/nvidia/Linux_for_Tegra/source/kernel/kernel-jammy-src”
mkdir -p /home/wel/nvidia/Linux_for_Tegra/source/out/nvidia-linux-header
cp -LR /home/wel/nvidia/Linux_for_Tegra/source/kernel/kernel-jammy-src/* /home/wel/nvidia/Linux_for_Tegra/sourceut/nvidia-linux-header
cp: 无法复制循环的符号链接 ‘/home/wel/nvidia/Linux_for_Tegra/source/kernel/kernel-jammy-src/kernel_out/source/keel_out’
make: *** [Makefile:126:nvidia-headers] 错误 1
root@wel-22-04-5:/home/wel/nvidia/Linux_for_Tegra/source#
Hi,
So you still hit error in step 3:
Kernel Customization — NVIDIA Jetson Linux Developer Guide 1 documentation
3. Run the following commands to build the Jetson Linux kernel and its in-tree modules:
$ export CROSS_COMPILE=<toolchain-path>/bin/aarch64-buildroot-linux-gnu-
$ make -C kernel
Hello, I’m following this guide.
when I run make modules
, I got same issue:
In file included from ./include/linux/module.h:22,
from /home/orin/Linux_for_Tegra/source/nvidia-oot/drivers/misc/nvsciipc/nvsciipc.c:13:
./include/linux/module.h:183:43: error: expected ‘,’ or ‘;’ before ‘KBUILD_MODFILE’
183 | #define MODULE_FILE MODULE_INFO(file, KBUILD_MODFILE);
| ^~~~~~~~~~~~~~
./include/linux/moduleparam.h:26:61: note: in definition of macro ‘__MODULE_INFO’
26 | = __MODULE_INFO_PREFIX __stringify(tag) "=" info
| ^~~~
./include/linux/module.h:183:25: note: in expansion of macro ‘MODULE_INFO’
183 | #define MODULE_FILE MODULE_INFO(file, KBUILD_MODFILE);
| ^~~~~~~~~~~
./include/linux/module.h:230:34: note: in expansion of macro ‘MODULE_FILE’
230 | #define MODULE_LICENSE(_license) MODULE_FILE MODULE_INFO(license, _license)
| ^~~~~~~~~~~
/home/orin/Linux_for_Tegra/source/nvidia-oot/drivers/misc/nvsciipc/nvsciipc.c:865:1: note: in expansion of macro ‘MODULE_LICENSE’
865 | MODULE_LICENSE("GPL v2");
| ^~~~~~~~~~~~~~
I’m compiling the kernel natively on my Jetson device.
How can I resolve this issue?
Hi,
Please have a x86 host PC. The steps are for crossing compilation on a x86 host.
Thank you for your reply.
Can’t I build everything natively on the Jetson without using an x86 PC?
NVidia dont have eloborate steps for building on native jetson I think
I was able to temporarily fix the error by adding KBUILD_CFLAGS_MODULE += -DMODULE
at the end of the Linux_for_Tegra/source/nvidia-oot/drivers/misc/nvsciipc/Makefile
.
This topic was automatically closed 14 days after the last reply. New replies are no longer allowed.