我知道这是一个非常模糊的问题,但除了向这个社区提问外,我别无选择。
我想做的是使用 Yocto 在 Variscite IMX8MP-VAR-DART 板上安装 Xenomai。到目前为止我所做的如下,下载了 Xenomai 和 I-pipe 补丁,编辑补丁,因为它有一些文件命名问题,没什么大不了的。它不是 Yocto 的一部分。我只是使用 devtool 来修改 Linux 内核,然后尝试在其中安装 Xenomai 和 i-pipe。它失败并出现以下错误。
当我尝试 make menuconfig 时,它会在其中显示 Xenomai,但无论我做什么,这些错误都不会消失。
In file included from kernel/xenomai/posix/clock.c:22:0:
./include/xenomai/cobalt/kernel/clock.h: In function ‘xnclock_core_read_raw’:
./include/xenomai/cobalt/kernel/clock.h:132:2: error: implicit declaration of function ‘ipipe_read_tsc’; did you mean ‘native_read_pmc’? [-Werror=implicit-function-declaration]
ipipe_read_tsc(t);
^~~~~~~~~~~~~~
native_read_pmc
In file included from ./include/xenomai/cobalt/kernel/thread.h:27:0,
from ./include/xenomai/cobalt/kernel/sched.h:24,
from kernel/xenomai/posix/internal.h:21,
from kernel/xenomai/posix/clock.c:23:
./include/xenomai/cobalt/kernel/timer.h: At top level:
./include/xenomai/cobalt/kernel/timer.h:506:13: warning: ‘struct xnthread’ declared inside parameter list will not be visible outside of this definition or declaration
struct xnthread *waiter,
^~~~~~~~
In file included from ./include/xenomai/cobalt/kernel/thread.h:34:0,
from ./include/xenomai/cobalt/kernel/sched.h:24,
from kernel/xenomai/posix/internal.h:21,
from kernel/xenomai/posix/clock.c:23:
./xenomai/include/asm/xenomai/machine.h:32:10: fatal error: asm/compiler.h: No such file or directory
#include <asm/compiler.h>
^~~~~~~~~~~~~~~~
cc1: some warnings being treated as errors
compilation terminated.
scripts/Makefile.build:265: recipe for target 'kernel/xenomai/posix/clock.o' failed
make[3]: *** [kernel/xenomai/posix/clock.o] Error 1
scripts/Makefile.build:500: recipe for target 'kernel/xenomai/posix' failed
make[2]: *** [kernel/xenomai/posix] Error 2
scripts/Makefile.build:500: recipe for target 'kernel/xenomai' failed
make[1]: *** [kernel/xenomai] Error 2
Makefile:1731: recipe for target 'kernel' failed
make: *** [kernel] Error 2
其次,按照本指南使用 Yocto 尝试在内核中构建它。它已成功构建,但不影响我的构建。
请告诉我一种将 Xenomai Cobalt 实际集成到我设备的 Variscite 内核中的方法,即 5.4.72 btw。