[Armadillo:02633] Re: Armadillo-500でカーネルをeabiでコンパイルするとブートできない

Shin-ya Koga email@hidden
2008年 1月 26日 (土) 08:43:39 JST


サムシングプレシャスの古賀です。

近藤さん([Armadillo:02632]):
>atmark-dist環境でクロスコンパイルしています。
> 
>2.6.23のカーネルにアルマジロのドライバ等を移植し、動作するようになったの
>ですが、
>eabiでコンパイルするとブートできなくなってしまうようです。
>カーネルイメージの解凍後に固まってしまいます。
>
>カーネルのmenuconfigで
>
>KernelFeatures--->
>[*] Use the ARM EABI to compile the kernel
>[*] Allow old ABI binaries to run with this kernel (EXPERIMENTAL)
>
>にチェックを入れてコンパイルしています。

弊社で試した時は、ATDE v20071018 + v2.6.12.3-a9-11
だったので、もしかすると違う要因かも知れませんが、
カーネルの起動後の init(busybox) でコケているので
あれば、カーネルだけが EABI ビルドされているのが
原因だと思います。

弊社では、ユーザランドのソースも全て -mabi オプショ
ン付きでビルドされるようにしてみても駄目でした。原因
は、busybox のビルド時に、ATDE の /usr/arm-linux/lib/
配下の C ライブラリがリンクされるためだったと思われる
のですが、その件がうまく解決できなかったため、結局、
 http://www.codesourcery.com/gnu_toolchains/arm/download.html
で配布されているツールチェーンを使ってカーネルとユーザ
ランドを EABI ビルドしました。

現在のところ、Armadillo-500 のカーネルとユーザランド
を EABI ビルドして、問題なくブートできるところまでは
確認しています。


以上、参考になりましたら幸いです。

--
古賀信哉 (株)サムシングプレシャス



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