[Uclinux-h8-devel] init作成について

Back to archive index

Yoshinori Sato ysato****@users*****
2003年 6月 19日 (木) 23:49:18 JST


At Thu, 19 Jun 2003 21:10:50 +0900,
nagao kin'ichiro wrote:
> 
> たびたび失礼いたします。
> 長尾です。
> 
> 前回、送信させていただいた状況よりは若干進みましたが、
> またユーザランドの構築でまだ悩んでおります。
> 
> 開発環境ですが
>     binutils-2.11.2.tar.gz + binutils-2.11.2.patch
>     gcc-2.95.3.tar.gz
>     newlib-1.8.2.tar.gz 
>     uClibc-0.9.9.tar.bz2 + ptrace.diff
>     coff2flt-0.5.tar.gz + coff2flt-0.5.patch
> です
> 
> initが動くか知るために岡崎様のinit-hello.cを使用させていただきました。
> http://www.bc.wakwak.com/~domo/uClinux.html
> 
> コンパイルコマンドは
> # h8300-uclinux-hms-gcc -fsigned-char -mh -mint32 -static \
>    -nostartfiles /usr/local/h8300-uclinux-hms/lib/crt0.o \
>    -Wall -I.  -I/usr/local/h8300-uclinux-hms/include \
>    -o init.coff init-hello.c \
>    -L/usr/local/h8300-uclinux-hms/lib \
>    -Wl,-T uClinux-H.x \
>    -Wl,--embedded-relocs8
> を実行し作成されたinit.coffを
> 
> # coff2flt -o init init.coff
> し、initを作成しました
> 問題はこのinitなのですが、initを
> # od -ax init
> でヘッダ部分を見たところ
> 
> 0000000   b   F   L   T stx nul nul nul   \ soh nul nul   2   ? nul nul
>         4662 544c 0002 0000 01dc 0000 3fb2 0000
> 0000020   T   @ nul nul   d   D nul nul nul dle nul nul   T   @ nul nul
>         4054 0000 4464 0000 1000 0000 4054 0000
> 
> となっており、ヘッダ部分がすこし違うようなのです
> (/bin等を作成した後、enromfsでrootimageをつくりましたが動作しませんでした)
> 
> 
> genromfsで動作するinitのヘッダは以下の通りです
> 
> 0000000   b   F   L   T nul nul nul stx nul nul   )   B nul nul   !   n
>         4662 544c 0000 0200 0000 c229 0000 eea1
> 0000020 nul nul   *   n nul nul   U  so nul nul dle nul nul nul   *   n
>         0000 eeaa 0000 0ed5 0000 0010 0000 eeaa
> 
> 
> このような状況なのですが、どなたかお力をお貸ししていただけませんでしょうか?
> よろしくお願いいたします。
> 

ヘッダの違いですが、先頭の8バイトは固定ですが,その後ろはサイズなど
の情報なので、まったく同じプログラムでない限り一致しません。
詳しい情報はinclude/linux/flat.hの定義を見てください。

objdump -h init.coffの結果と突き合わせれば、ヘッダが正常かどうかは
わかります。

カーネルを再構築できるのであれば、
fs/binfmt_flat.cの先頭の所にある
#undef DEBUG
を
#define DEBUG
にして、デバッグ用のメッセージを確認すれば、何かわかるかもしれません。

-- 
Yoshinori Sato
<ysato****@users*****>



Uclinux-h8-devel メーリングリストの案内
Back to archive index