[Armadillo:00595] Re: デバイスドライバのコンパイル2

Fumito Morishima email@hidden
2005年 11月 2日 (水) 18:13:43 JST


森島です。

PCとの動作の違いですが、カーネルのバージョンが異なるためです。

> 1.
> atmark-dist-20051017/linux2.6.x/drivers/input/touchscreen/
> ep93xx_ts.oとep93xx_ts.koの違いはなんでしょうか?

.ko という拡張子ですが、カーネル2.5以降ではモジュールの
ファイルフォーマットが変わっており、区別するために
.ko が使われています。

> 2.
> .koを作成するにはどのような手続きが必要なのでしょうか?
> コンパイルオプション?、リンク?、変換?

2.6向けのモジュールを作成する方法ですが、
こんな方法でよいようです。

echo "obj-m := test.o" > Makefile
make -C /path/to/source SUBDIRS=$PWD modules

(参照)
https://lwn.net/Articles/21823/?format=printable

渡部清太郎 wrote:
> 組み込み用としてアルマジロ9で開発を始めましたが、linuxはまったくの初心者 
> です。
>  
> 簡単なデバイスドライバをコンパイルし、アルマジロ9にinsmodで組み込もうと 
> しています。
>  
> 前回のメールの続きですが、
> うまくいかないので、タッチスクリーンドライバをモジュールとするようにmake 
> menuconfigし、makeしたあと、
> armadillo9:~/tds530soft# insmod ./ep93xx_ts.ko
> armadillo9:~/tds530soft# lsmod
> Module                  Size  Used by
> ep93xx_ts               5716  -
> armadillo9:~/tds530soft#
> とうまくいく事を確認しました。
>  
> しかし同じ場所にあるep93xx_ts.oは
> insmod: error inserting 'ep93xx_ts.o': -1 Invalid module format
> となります。
>  
> i386PCのmakeが違うのだと思いますが、
> PCバージョンlinux-2.4.27-2-386
> (カーネルはdbianインストールのままでソースはwww.kernel.orgよりダウンロー 
> ド <http://www.kernel.org>2.4.27、vertion.hを書き換え)
> アルマジロのクロス開発環境をインストール
>  
> armadillo9:~/tds530soft# uname -a
> Linux armadillo9 2.6.12.3-a9-1 #1 Fri Oct 21 17:11:38 JST 2005 armv4tl 
> GNU/Linux
>  
> そこで質問があります。
> 1.
> atmark-dist-20051017/linux2.6.x/drivers/input/touchscreen/
> ep93xx_ts.oとep93xx_ts.koの違いはなんでしょうか?
>  
> 2.
> .koを作成するにはどのような手続きが必要なのでしょうか?
> コンパイルオプション?、リンク?、変換?
>  
> どなたか教えていただけないでしょうか、宜しくお願いします。
>  
>  
> 
> 
> ------------------------------------------------------------------------
> 
> _______________________________________________
> armadillo mailing list
> email@hidden
> http://lists.atmark-techno.com/mailman/listinfo/armadillo



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