[Suzaku:00723] Re: デバイスモジュールのmakeについて

Tetsuya OHKAWA email@hidden
2007年 1月 12日 (金) 10:53:27 JST


大川です。

下記、頂いた内容を拝見すると、
SUZAKU用にクロスコンパイルされていないですね。

一度、『SUZAKU スターターキットガイド (Linux開発編)』をご覧頂くと
SUZAKUでの開発方法(デバイスドライバやアプリケーションの作成方法)について
理解が深まるかと思います。
#スターターキットをお持ちでない方も、活用いただけます。

本書は、ダウンロードサイトから取得できます。
http://download.atmark-techno.com/suzaku-starter-kit/suzaku_starter_kit_guide_linux-1.2.0.pdf



Itou Akira wrote:
> いつもお世話になっております。
> 伊藤と申します。
>
> 早速ですが表題の件...
> デバイスドライバの勉強で以下
> (1)のモジュールを作成し、
> (2)の内容でMakeを掛けましたが、設定ができてないようで、
> (3)のエラーとなりデバイスモジュールが作成できません。
>
> 以下環境でMakeを掛けました。
>  1)uClinux-dist-20051110-suzaku6/フォルダにdd_drive/を新たに作成。
>  2)(1)及び(2)のdd.c、Makefileをdd_drive/フォルダにコピー
>  3)dd_drive/フォルダに移動しMakeを実行
>    email@hidden:~/uClinux-dist-20051110-suzaku6/dd_drive$ make
>
> 色々とMakefileの内容を変えてみたり、dd_drive/の位置を変えてみたりしましたが
> ダメでした。
> 大変申し分けありませんが、御教授よろしくお願いします。
>
> #####(1)↓ dd.c##########################################
> #include	<linux/init.h>
> #include	<linux/module.h>
>
> static int dd_init( void )
> {
>     printk( KERN_INFO "dd Module Install\n" );
>     return 0;
> }
>
> void dd_cleanup( void )
> {
>     printk( KERN_INFO  "dd Module Uninstall\n" );
> }
>
> int init_module(void) 
> {
>     return dd_init();
> }
> void cleanup_module(void) 
> {
>     dd_cleanup();
> }
> #####(1)↑##############################################
> ###########################################################
> #####(2)↓Makefile######################################
> INCDIR = -I../usr/src/linux-2.4.x/include/linux
> CFLAGS = -O2 -Wall -c -D__KERNEL__ -DMODULE $(INCDIR)
> DRIVER  = dd
>
> all: $(DRIVER).o $(DRIVER)
>
> $(DRIVER).o:   $(DRIVER).c 
> 	gcc $(CFLAGS) $(DRIVER).c
>
> device:
> 	mknod -m 666 /dev/dd c 60 0
> #####(2)↑##############################################
> ###########################################################
> #####(3)↓コンパイルエラー##############################
> gcc -O2 -Wall -c -D__KERNEL__ -DMODULE -I ../linux-2.4x/include/linux dd.c
> In file included from /user/include/asm/system.h:5,
>                  from /user/include/asm/prosessor.h:18,
>                  from /user/include/asm/thread_info.h:13,
>                  from /user/include/linux/thread_info.h:21,
>                  from /user/include/linux/spinlock.h:19,
>                  from /user/include/linux/capability.h:45,
>                  from /user/include/linux/sched.h:7,
>                  from /user/include/linux/moduley.h:10,
>                  from dd.c:2:
> /userinclude/linux/kerner.h:72 error: syntax error before "size_t"
> /userinclude/linux/kerner.h:74 error: syntax error before "size_t"
>>   省略
>> make: ***[dd.o] Error 1
> #####(3)↑##############################################
>
> 尚、環境は以下の通りです。
> ・SUZAKU-V
> ・uClinux-dist-20051110-suzaku6
>
> 以上、よろしくお願いいたします。
>
>   




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