銀天ライブラリは内部で Boost C++ Libraries ( http://www.boost.org/ ) を使用しています。
当ライブラリを導入する前に、お使いの環境に Boost の version 1.39.0 以降がインストールされていることを確認して下さい(確認方法)。
もし Boost がインストールされていないようなら、 公式ページ の Getting Started か、あるいは Let's Boost の インストール方法解説 を参考に、最新版の Boost をインストールしてください。(銀天ライブラリを使わなくても Boost は便利ですよ!)
銀天ライブラリのダウンロードページはこちらになります: http://sourceforge.jp/projects/gintenlib/
現在、正式にリリースされているアーカイブは存在しません。近日中に version 1.0.0 が完成する予定となっています。それまでは下記の Git リポジトリから入手して下さい。
いちいちファイルをダウンロードするのが面倒だ、という方は、開発用の Git リポジトリから直接最新バージョンのライブラリを入手することもできます。
適当なディレクトリで、以下のコマンドを入力して下さい。
git clone git://git.sourceforge.jp/gitroot/gintenlib/gintenlib.git
このコマンドにより、カレントディレクトリに新たに gintenlib/ ディレクトリが作られ、その中に銀天ライブラリの全てのファイル(下の階層図でいう gintenlib/ や html/ など)がダウンロードされます。(階層図について、 Git から入手した場合、「ルートディレクトリ」の名前は gintenlib_X_X_X/ ではなく gintenlib/ になるので注意してください)
ダウンロードしたアーカイブを展開したディレクトリ(あるいは Git リポジトリから取得したディレクトリ)は、以下のような階層構造になっています:
gintenlib_1_0_0/ ...............銀天ライブラリの「ルートディレクトリ」 gintenlib/ .................銀天ライブラリのヘッダが格納される場所 assign.hpp bool_comparable.hpp ... html/ ......................ドキュメントが格納される場所 index.html .............HTMLドキュメントのエントリ getting_started.html ...このページ ... tests/ .....................テストコード ...
銀天ライブラリは現在のところ、ヘッダのみで構成されたライブラリなので、使用に際して行うことは殆どありません。
唯一すべきことは、ライブラリのヘッダが格納された gintenlib/ ディレクトリを含むディレクトリ(通常は銀天ライブラリの「ルートディレクトリ」)に対し、インクルードパスを通すことだけです。
インクルードパスの通し方は、各開発環境によって異なりますので、ここでは省略します。
銀天ライブラリが正しくインストールされたことを確かめるため、ちょっとしたプログラムを書いてみましょう。
以下のプログラムは、与えられたコンテナをカンマ区切りにしてストリーム出力する list_format ライブラリを用いて書いた、単純な HelloWorld の例です。
#include <gintenlib/list_format.hpp> #include <iostream> int main() { const char* a[] = { "Hello", "Ginten Library!" }; std::cout << gintenlib::list_format( a, "", ", ", "\n" ); }
適当なファイルに入力し、コンパイルしてみましょう。
無事コンパイルされ、実行結果として以下のように出力されれば成功です。
Hello, Ginten Library!
銀天ライブラリの世界へようこそ!
ライブラリ一覧 のページから興味のあるものを探して、実際に使ってみましょう。
銀天ライブラリを使うことでどんなことが出来るのか、とりあえず手っ取り早く知りたい、という場合には、 サンプルコード一覧 を眺めてみるのもよいでしょう。
作者までご連絡下さい。
以下のコードをコンパイルして実行してみてください。
お使いの環境に Boost が導入されていれば、正しくコンパイルされ、実行結果として Boost のバージョンを得ることができます。
// boost のバージョンを表示する #include <boost/version.hpp> #include <iostream> #include <boost/format.hpp> int main() { // バージョンを調べる const int major = BOOST_VERSION / 100000, minor = BOOST_VERSION / 100 % 1000, patch = BOOST_VERSION % 100; // 出力 std::cout << boost::format("version %1%.%2%.%3%\n") % major % minor % patch; return 0; }
出力例
version 1.41.0