前のページ 次のページ 目次

7. C++ プログラムのコンパイル

libg++ は math ライブラリの一部を使用しているので、libm へリンクをしま す。よって、既存の libg++ は glibc と共にリコンパイルするかバイナリを 入手しましょう。(x86 では) glibc にリンクしたバイナリに従っている libg++ の最新のソースは ftp://ftp.yggdrasil.com/private/hjl/ にあります。

7.1 テスト用 glibc 導入用の libg++ の導入

テストライブラリとして導入した glibc がある場合は glibc を導入した (例えば前のセクションでの /usr/i486-linuxglibc2 のような) ディレクトリ に導入する必要があります。(筆者がこの方法で libg++ をコンパイルする 機会は今まで無かったのですが、お勧めする方法は) バイナリパッケージから 導入した場合、テンポラリディレクトリにファイルを取り出し、usr/lib/ ファイルを <導入ディレクトリ>/lib/ ディレクトリに、 usr/include/ ファイルを <導入ディレクトリ>/include/ディレクトリ に移動する必要があります。(先ず include/g++ リンクを削除するのを忘れず に!) そして、usr/bin/ ファイルを <導入ディレクトリ>/bin/ ディレクトリに移動する必要があります。

7.2 主たる glibc 導入用の libg++ の導入

主たるライブラリとして glibc を導入した場合は、先ず古い libg++ を 古い libc ディレクトリに移動しておけば古い libc と共に g++ プログラム をコンパイルしたいときにできます。多分、これを行うもっとも簡単な方法 は前のセクションでやったように libc 5 と共にコンパイルした libg++ を 新しく導入して、そして glibc を標準的に導入することです。

7.3 主ではない libc と共に C++ プログラムのコンパイル

C++ プログラムを主ではない libc と共にコンパイルする場合は、 上記の例題ではテスト用 libc だった /usr/i486-linuxglibc2/include/g++ であった g++ インクルードディレクトリを含める必要があります。 これは通常 CXXFLAGS 変数で次のように追加します。:

 CXXFLAGS = -nostdinc -I/usr/i486-linuxglibc2/include -I/usr/lib/gcc-lib/i486-linuxglibc2/2.7.2.2/include -I/usr/i486-linuxlibc5/include/g++ -b i486-linuxglibc2
 


前のページ 次のページ 目次