[Armadillo:01853] Re: printk の使い方について

email@hidden
2007年 8月 10日 (金) 14:24:12 JST


田辺と申します。

回答ありがとうございます。

実を言いますと、同じ環境でご提示のデバイスドライバをコン
パイルして
みたところ、エラー出まくりだったので、まず分離して考えよ
うという
ことで、
 printk がそもそもおかしいので、それを直したら、同じ理
由で直る
かもしれないということで、printkだけを評価質問させて頂き
ました。

まず、printkから片付けたいのですが、カーネル関数はデバド
ラなどで
しか使えないのでしょうか?

また、下記のサンプルも膨大なエラーが出てしまうのですが、
原因がわかりません。
Makefileはprintkと同じものを使いました。
make config などで設定を変更する必要があるのでしょうか?

よろしくお願いします。



--- Yasushi SHOJI <email@hidden> wrote:

> At Thu, 9 Aug 2007 20:52:03 +0900 (JST),
> <email@hidden> wrote:
> > 
> > printkの使い方について教えてください。
> > 
> > テストのために簡単なプログラム
> > test_printk.c
> >
>
----------------------------------------------------------------------------
> > #include <linux/kernel.h>
> > 
> > int main( void )
> > {
> > 	printk("Hello\n");
> > }
> >
>
----------------------------------------------------------------------------
> > をコンパイルしてみたのですが、
> > 以下のエラーが出てしまいます。
> 
> printk()はLinuxカーネルの関数です。ドライバの作成を目
指しています?
> もし、普通のアプリケーションなら、printf()が使えます。
> 
> デバイスドライバであれば、
> 
> 	#include <linux/init.h>
> 	#include <linux/module.h>
> 	MODULE_LICENSE("Dual BSD/GPL");
> 	static int hello_init(void)
> 	{
> 	    printk(KERN_ALERT "Hello, world\n");
> 	    return 0;
> 	}
> 	static void hello_exit(void)
> 	{
> 	    printk(KERN_ALERT "Goodbye, cruel world\n");
> 	}
> 	module_init(hello_init);
> 	module_exit(hello_exit);
> 
> という感じになります。上記のコードは、Linuxデバイスド
ライバ
> 第3版
> (ISBN: 4873112532)からの抜粋です。
> -- 
>           yashi
> 




armadillo メーリングリストの案内