|
次のページ
前のページ
目次へ
6. a.out 形式のバイナリの後方互換性まれにしかないことなのですが、ソースコードが入手できなかったり、さまざ まな要因でソースコードから ELF バイナリが作れないといった理由で a.out バイナリを使う必要に迫られることがあります。 こういうことも起こるので、ELF で組んであるシステムでも大抵は a.out の
ライブラリを全部用意しています。これは
カーネルには a.out のサポートを組み込む必要があるので注意してください。
これは直接組み込んでもかまいませんし、ローダブルモジュールにしてもかま
いません。これを有効にするにはカーネルを再構築する必要があるかもしれま
せん。さらに、Linux ディストリビューションによっては互換性保持のための
特殊なライブラリをインストールする必要があります。例えば、Debian には
a.out の X アプリケーションを実行するための 6.1 事例何年か前に Jerry Smith がとても便利な rolodex というプログラム を書きました。このプログラムは Motif ライブラリ(訳注: フリーで手に入ら ない)を使っていますが、好運なことに a.out のライブラリを静的リンクして あるバイナリが入手できます。残念なことに、lesstif ライブラリ を使ってソースを再構築するには大幅に手を入れる必要があります。さらに残 念なことに、ELF システム上では a.out のバイナリは次のようなエラーメッ セージを出力してふっ飛んでしまいます。
このようなことがあるために、この手のライブラリが
同様のリンクを libXt.so.3 と libc.so.4 ライブラリについて作る必要が あることもわかります。この作業はもちろん root で行う必要があります。 ここで注意ですが、既に入っているライブラリを上書きしたり、バージョン番 号の衝突が絶対に起こらないように確かめてください。幸い、こういった問題 が起こらないようにするため、新しい ELF ライブラリのバージョン番号は古 い a.out ライブラリよりも大きくされています。 上記 3 つのリンクを張れば、xrolodex はうまく動きます。 xrolodex パッケージは元々 Spectro に投稿されていまし たが、今はここから消えてしまったようです。現在は Sunsite から tar.Z 形式で入手できます(サイズは 512K バイトです)。 次のページ 前のページ 目次へ |
[ |