2

freebsd カーネルのsched_ule.cを変更しています。デバッグ メッセージを出力するには、syslog関数を使用しています。しかし、コンパイル中に次のエラーが発生します。

/usr/src/sys/kern/sched_ule.c:731: warning: implicit declaration of 
function 'syslog' /usr/src/sys/kern/sched_ule.c:731: warning: nested

extern declaration of 'syslog' [-Wnested-externs]
*** Error code 1 Stop in /usr/obj/usr/src/sys/MYKERNEL.
*** Error code 1 Stop in /usr/src.
*** Error code 1 Stop in /usr/src.

次のヘッダーも含めました: syslog.h、stdarg.h、およびそれらなしでコンパイルも試みました。

4

1 に答える 1

2

カーネルから (ユーザー空間で実行される) libc 関数を呼び出すことはできません。

代わりにprintf(9)またはlog(9)を使用してください。

于 2013-03-12T23:10:40.757 に答える