buildroot 2020.02 と 2 カーネルで組み込み OS をビルドしようとしています。Linux カーネルは 4.19.107 で、Xenomai カーネルは 3.1 です。ipipe 機能を使用するために Adeos パッチを適用します: このサイトから ipipe-core-4.19.106-cip21-arm07: https://xenomai.org/downloads/ipipe/v4.x/arm/。コンパイルは古いカーネルと古い xenomai バージョンで動作しますが、これでは /include/asm-generic/xenomai/hal.h と hal.c にコンパイル エラーがあります。
./include/asm-generic/xenomai/hal.h:169:34: error: implicit declaration of function 'ipipe_propagate_irq'; did you mean 'rthal_propagate_irq'? [-Werror=implicit-function-declaration]
#define rthal_propagate_irq(irq) ipipe_propagate_irq(irq)
^~~~~~~~~~~~~~~~~~~
./include/asm-generic/xenomai/hal.h:524:2: note: in expansion of macro 'rthal_propagate_irq'
rthal_propagate_irq(irq);
^~~~~~~~~~~~~~~~~~~
./include/asm-generic/xenomai/hal.h: In function '__rthal_apc_schedule':
./include/asm-generic/xenomai/hal.h:168:38: error: implicit declaration of function 'ipipe_schedule_irq'; did you mean 'ipipe_disable_irq'? [-Werror=implicit-function-declaration]
#define rthal_schedule_irq_root(irq) ipipe_schedule_irq(irq)
^~~~~~~~~~~~~~~~~~
./include/asm-generic/xenomai/hal.h:537:3: note: in expansion of macro 'rthal_schedule_irq_root'
rthal_schedule_irq_root(rthal_apc_virq);
^~~~~~~~~~~~~~~~~~~~~~~
./include/asm-generic/xenomai/hal.h: In function 'rthal_apc_schedule':
./include/asm-generic/xenomai/hal.h:118:41: error: implicit declaration of function 'ipipe_test_and_stall_pipeline_head'; did you mean 'ipipe_test_and_stall_head'? [-Werror=implicit-function-declaration]
#define rthal_local_irq_save(x) ((x) = ipipe_test_and_stall_pipeline_head() & 1)
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
./include/asm-generic/xenomai/hal.h:118:41: note: in definition of macro 'rthal_local_irq_save'
#define rthal_local_irq_save(x) ((x) = ipipe_test_and_stall_pipeline_head() & 1)
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
./include/asm-generic/xenomai/hal.h:119:36: error: implicit declaration of function 'ipipe_restore_pipeline_head'; did you mean 'ipipe_restore_head'? [-Werror=implicit-function-declaration]
#define rthal_local_irq_restore(x) ipipe_restore_pipeline_head(x)
^~~~~~~~~~~~~~~~~~~~~~~~~~~
./include/asm-generic/xenomai/hal.h:546:2: note: in expansion of macro 'rthal_local_irq_restore'
rthal_local_irq_restore(flags);
^~~~~~~~~~~~~~~~~~~~~~~
./include/asm-generic/xenomai/hal.h:203:3: error: implicit declaration of function 'ipipe_stall_pipeline_from'; did you mean 'ipipe_stall_head'? [-Werror=implicit-function-declaration]
ipipe_stall_pipeline_from(ipipe_root_domain); \
^~~~~~~~~~~~~~~~~~~~~~~~~
./include/asm-generic/xenomai/system.h:159:3: note: in expansion of macro 'rthal_emergency_console'
rthal_emergency_console();
^~~~~~~~~~~~~~~~~~~~~~~
./include/asm-generic/xenomai/hal.h:204:3: error: implicit declaration of function 'ipipe_set_printk_sync'; did you mean 'ipipe_set_hooks'? [-Werror=implicit-function-declaration]
ipipe_set_printk_sync(ipipe_current_domain); \
^~~~~~~~~~~~~~~~~~~~~
ipipe.h ファイルを検索しましたが、残念ながらここではこれらのメソッドは定義されておらず、同等のメソッドが見つかりません。
問題があるかどうかは誰にもわかりますか?
ファウンドリー