2006/06/11

Bus errorはlibcの破損から

仕事の関係で結局Interop 2006に行けなかったのだが…。

FD Bootな日本語表示できるLinuxとか、 CD Bootな日本語表示できるLinuxとか、作っていた。
FD版はできるようになったから、FD数枚をまとめたCD版作るぜぃって作ってみたら、 Bus error。やっかいなことに、1個目のプロセスは起動するのに、2個目はBus error。 busyboxの問題?initrdが大きすぎる?

いろいろ調べたけどわからず。そもそもディストロのインストールCDとか、Live CD とかあるから、実現方法はあるわけで。kernel作成時のオプションかといろいろ 変えてみたけど、変わらず。

ふと、1個目のプロセスってstatic linkしたbusyboxで、2個目はdynamic linkした バイナリだから、ライブラリ周りをチェックしてみたら、libcが壊れていた。 build環境のものをコピーし直したら解決。

でも、init=/bin/dashとdynamic linkのdashを指定して起動しなかった時点で、 ライブラリ周りの可能性に気が付かないといけないんだよな。まだまだ修行が足りん。



0 件のコメント :

コメントを投稿

Comments on Google+: