3.3.3. Boost
boost
パッケージには、ピア・レビューされた多くの無償の移植可能な C++ ソースライブラリーがあります。これらのライブラリーは、移植可能なファイルシステムおよび時間/日付抽象化、シリアル化、ユニットテスト、スレッド作成およびマルチプロセス同期化、解析、グラフ化、正規表現の操作など、その他多くのタスクに適しています。
boost
パッケージのインストールは、リンクの依存関係を十分に満たします (つまり、共有ライブラリーファイルのみ)。C++ 開発で使用可能なライブラリーおよびヘッダーファイルのすべてを活用するには、boost-devel
もインストールする必要があります。
boost
は実際にはメタパッケージで、多くのライブラリーのサブパッケージが含まれています。これらのサブパッケージは個別にインストールして、より詳細なパッケージ間の依存関係の追跡を提供することもできます。メタパッケージには、以下のサブパッケージすべてが含まれます。
boost-date-time
boost-filesystem
boost-graph
boost-iostreams
boost-math
boost-program-options
boost-python
boost-regex
boost-serialization
boost-signals
boost-system
boost-test
boost-thread
boost-wave
静的リンク用のパッケージまたは基礎的 Message Passing Interface (MPI) サポートに依存するパッケージは、メタパッケージに含まれません。
MPI サポートは 2 つの形式で提供されます: ひとつはデフォルトの Open MPI 実装で [1]、もうひとつは代替の MPICH2 実装です。使用する基礎的 MPI ライブラリーはユーザーが決定でき、特定のハードウェア詳細とユーザーの好みによります。インストール済みファイルは一意のディレクトリーの場所にあることから、これらのパッケージは並行してインストールできることに注意してください。
Open MPI:
boost-openmpi
boost-openmpi-devel
boost-graph-openmpi
boost-openmpi-python
MPICH2:
boost-mpich2
boost-mpich2-devel
boost-graph-mpich2
boost-mpich2-python
静的リンクが避けられない場合は、
boost-static
パッケージが必要な静的ライブラリーをインストールします。スレッド対応と単一スレッドの両方のライブラリーが提供されます。
3.3.3.1. Boost 更新
Red Hat Enterprise Linux 6 バージョンの Boost 機能には、多くのパッケージ関連の改善と新機能が含まれています。
boost
パッケージのいくつかの側面が変更されています。上記のように、モノリシックな boost
パッケージは、より小型の別個のサブパッケージで増強されてきました。これでユーザーは依存関係の管理がより広くできるようになり、Boost を使用するカスタムアプリケーションをパッケージする際はより小型のバイナリーパッケージが可能になっています。
さらに、全ライブラリーのシングルスレッドとマルチスレッドバージョンがパッケージ化されています。マルチスレッドバージョンには、通常の Boost 慣習の通りに
mt
接尾辞が含まれています。
Boost には以下の新たなライブラリー機能もあります。
- Foreach
- Statechart
- TR1
- Typeof
- Xpressive
- Asio
- Bitmap
- Circular Buffer
- Function Types
- Fusion
- GIL
- Interprocess
- Intrusive
- Math/Special Functions
- Math/Statistical Distributions
- MPI
- System
- Accumulators
- Exception
- Units
- Unordered
- Proto
- Flyweight
- Scope Exit
- Swap
- Signals2
- Property Tree
既存ライブラリーの多くは改善されバグ修正されているか、強化されています。