Download

最新版はlibstd-20080903.tar.bz2です。リリースノートと過去のリリースはRelease Notesから取得してください。

必要な構成

ビルドできたプラットフォーム

以下のプラットフォームでビルドを確認しました(i386アーキテクチャのみ)。

  • FreeBSD 6.3
  • Ubuntu 9.04
  • openSUSE 10.3

ビルドに必要なもの

ビルドは次のものに依存しています。

各プラットフォームではそれぞれ次のように準備するのが簡単です。

FreeBSD 6.3
Sanctuary 2.0と以下のportsをインストールしておきます。
  • devel/gmake
Ubuntu 9.04
一般的な開発環境に加え、Sanctuary 2.0と次のパッケージをインストールしておきます。
  • libdb4.7-dev
openSUSE 10.3
一般的な開発環境に加え、Sanctuary 2.0と次のRPMをインストールしておきます。
  • libdb-4_5-devel-4.5.20-29(またはdb1-devel-1.85-161)

ビルドとインストール

次の手順でビルド、インストールします。Berkeley DB 4を使用する場合は、configureのオプションに--with-bdbを指定してください。

% tar jxf libstd-YYYYMMDD.tar.bz2
% cd libstd-YYYYMMDD/
% ./configure ★1 ★2
% make ★3
% su
# make install ★3 ★4

★1 Ubuntu 9.04でlibdb4.7を使用する場合は次のようにオプションを指定してください。

% ./configure --with-bdb4

★2 openSUSE 10.3でdb1-1.85を使用する場合は次のようにオプションを指定してください。

% ./configure CPPFLAGS=-I/usr/include/db1

libdb-4_5を使用する場合は次のようにオプションを指定してください。

% ./configure --with-bdb4

★3 FreeBSDではmakeの代わりにgmakeを使用してください。

★4 インストールされるファイルは次の通りです(pathはconfigureのオプション--prefix=pathで指定したパスです)。

path/include/std/db/BTree.h
path/include/std/db/impl/BTree.h
path/include/std/io/BufferedInputTube.h
path/include/std/io/BufferedOutputTube.h
path/include/std/io/ByteArrayInputTube.h
path/include/std/io/File.h
path/include/std/io/FileDescriptor.h
path/include/std/io/InputTube.h
path/include/std/io/OutputTube.h
path/include/std/io/impl/BufferedInputTube.h
path/include/std/io/impl/BufferedOutputTube.h
path/include/std/io/impl/ByteArrayInputTube.h
path/include/std/io/impl/File.h
path/include/std/io/impl/FileDescriptor.h
path/include/std/io/impl/InputTube.h
path/include/std/io/impl/OutputTube.h
path/include/std/lang/ByteArray.h
path/include/std/lang/Chunk.h
path/include/std/lang/Error.h
path/include/std/lang/ImmutableChunk.h
path/include/std/lang/Object.h
path/include/std/lang/String.h
path/include/std/lang/impl/Object.h
path/include/std/util/ArraySet.h
path/include/std/util/LinkedHeap.h
path/include/std/util/LinkedList.h
path/include/std/util/Pool.h
path/include/std/util/impl/ArraySet.h
path/include/std/util/impl/LinkedHeap.h
path/include/std/util/impl/LinkedList.h
path/include/std/util/impl/Pool.h
path/lib/libstd.a
path/lib/libstd.la
path/lib/libstd.so
path/lib/libstd.so.*(libtoolが生成する共有ライブラリ)