|
次のページ
前のページ
目次へ
4. テストライブラリとしてのインストール
この節では、glibc2をテストライブラリとしてインストールする方法について 説明します。オプション指定をしない限り、コンパイルしたものは、既存の ライブラリにリンクされます。かなりの数のファイルにパスを記述する必要 があるので、ソースからインストールを行わなくてはならないでしょう。
4.1 コンパイルとインストール
必要条件
フルライブラリとアドオンのコンパイルに、i586@133, 64MB RAMで約3時間、 フル装備のi686@200では約30分かかります。
ソースの展開コンパイルにはいる前に、アーカイブからソースを展開する必要があります。 もっとも良いのは次の方法です。
これによりlinuxthreads,crypt,localedataディレクトリがglibc-2.0.6に 置かれ、configureがこれらのアドオンを認識できるようになります。
設定
glibc-2.0.6ディレクトリに compileという名のディレクトリを作成し、 cdします。作業は全てそこで行います。これにより後片付けが楽になります。 (まだ、make cleanが完璧に動作するようになっていないからです。)
コンパイルとインストール
コンパイルとチェックは下記の通りです。
make check がうまくいったらライブラリをインストールします。
4.2 ダイナミックローダのアップデート
4.3 gccの設定インストールの最後のステップは、gccが新しいライブラリを認識できるように
するための
この場合は、i486-unknown-linuxがシステム、2.7.2.2がバージョンです。
/usr/lib/gcc-lib/<システム> をテストシステムディレクトリにコピー
します。
テスト用の新しいシステムディレクトリとバージョンディレクトリに移動します。
そして、そのディレクトリのファイルspecs を編集します。
このファイルの中の/lib/ld-linux.so.1 を/lib/ld-linux.so.2
に変更します。
また、%{...:-lgmon} と書かれた部分を削除します。
glibcはプロファイリングにgmonライブラリを使用しないからです。
サンプルのspecsファイルは
specsファイルのサンプル
セクションを参照してください。
4.4 ヘッダーファイルへのリンクのアップデート新しいディレクトリの下に、ほかのディレクトリへのリンクを張ります。
ncursesなど、新しいディレクトリにヘッダーファイルを入れるべき
ライブラリを使用している場合、/usr/include からファイルをコピーするか
リンクを張ります。(ライブラリによっては、glibc2と一緒に再コンパイル
しないと適切に動作しないものがあります。その場合、そのパッケージを
単にコンパイルして/usr/i486-linuxglibc2 にインストールしてください)
4.5 インストール完了の確認インストール完了を確認するために、次のプログラムをglibc.cファイルとして 作成してください。
そして、"-b <base install directory> -nostdinc
-I<install directory>/include -I/usr/lib/gcc-lib/<new system dir>/
<gcc version>/include" というオプションでコンパイルします。
(訳注)私のシステムでは下記のようにしないと正しくリンクされませんでした。
gcc -b i686-linuxglibc2 -nostdinc -I/usr/i686-linuxglibc2/include -I/usr/local/lib/gcc-lib/i686-linuxglibc2/2.8.1/include glibc.c -o glibc -L/usr/i686-linuxglibc2/lib
(-Lオプションがみそ)
lddを使って、プログラムが古いlibcではなく新しいglibc2にリンクされたことを 確認します。
コンパイルができて、正しいリンクが確認でき、実行したときに
"hello world!"というメッセージが出れば、インストールは成功です。
次のページ 前のページ 目次へ |
[ |