Reading 204/204 dependency files
Done reading dependencies
MAKEFLAGS="ik -j4 --jobserver-auth=3,4" \
make KBUILD_EXTRA_SYMBOLS=/usr/realtime/modules/Module.symvers -C /home/ntu/linux-5.4.y SUBDIRS=`pwd` CC=gcc V=0 modules
make[1]: Entering directory '/home/ntu/linux-5.4.y'
CALL scripts/atomic/check-atomics.sh
CALL scripts/checksyscalls.sh
CHK include/generated/compile.h
Building modules, stage 2.
MODPOST 397 modules
make[1]: Leaving directory '/home/ntu/linux-5.4.y'
cp Module.symvers *.ko ../rtlib/
cp: cannot stat 'Module.symvers': No such file or directory
cp: cannot stat '*.ko': No such file or directory
make: [Makefile:540: modules] Error 1 (ignored)
You now need to run 'sudo make setuid' in order to run in place.
Reading 204/204 dependency files
Done reading dependencies
MAKEFLAGS="" \
/usr/bin/python3.9 modsilent.py make KBUILD_EXTRA_SYMBOLS=/usr/realtime/modules/Module.symvers -C /lib/modules/5.4.219-rtai-amd64+/build SUBDIRS=`pwd` CC=gcc V=0 modules
make[1]: Entering directory '/home/ntu/linux-5.4.y'
CALL scripts/checksyscalls.sh
CALL scripts/atomic/check-atomics.sh
Building modules, stage 2.
MODPOST 33 modules
make[1]: Leaving directory '/home/ntu/linux-5.4.y'
cp /usr/realtime/modules/Module.symvers /usr/realtime/modules/*.ko ../rtlib/
You now need to run 'sudo make setuid' in order to run in place.
以下是我重现该问题所遵循的步骤:
make
这是我期望发生的事情:
LinuxCNC 内核模块编译或至少尝试编译 5.4 内核
这是发生了什么:
除了内核模块之外的所有东西都可以编译。首先错误是:
然后进行此更改:
问题是:
我补充说
make V=1
,我认为正在发生的事情是 LinuxCNC 本质上是make modules
在内核源目录中运行,但这样做会构建树内内核模块。由于树内模块和内核映像已经构建,因此什么也不会发生。我认为 LinuxCNC 基本上是在尝试构建任何尚未在 Linux 内核源代码中构建的待定模块,而不是尝试构建它自己的模块。这MODPOST 33 modules
实际上是在计算我拥有的树内内核模块的数量。这是我从我的系统开始构建并专门为我的系统构建的经过精简的完全自定义内核make tinyconfig
,我启用的模块越多,数量就会增加得越高(MODPOST 397 modules
之前我模拟的是一个臃肿的内核。)在此之前它工作正常:
针对 4.14 和 4.19 RTAI 内核构建 LinuxCNC 工作得很好。
有关我的硬件和软件的信息:
lsb_release -a
):Debian 11/Bullseyeuname -a
):5.4.219(自定义)scripts/get-version-from-git
):44127d9