最終更新日時:
が更新

履歴 編集

Date-Time Build-Compiler Information

Build-Compiler Information

Overview

ライブラリ関数のいくつかはライブラリファイルを作成する必要がある。 これらの関数を含むライブラリ( libboost_date_time )を作成するには、buildディレクトリにあるJamfileを使う。

変数DATE_TIME_INLINEは、ある特定のコア関数のインライン化を制御する。 デフォルトでこの変数はライブラリのコンパイル時に定義されている。 ライブラリを使っている全てのコンパイル単位でこの定義を含んでいなければ、リンクエラーになるだろう。

Compilation Options

デフォルトでは posix_time はナノ秒レベルの精度を提供するために内部で 64bit整数と32bit整数を使う。 選択肢として、一つの 64bit整数でマイクロ秒レベルの精度を提供することもできる。 この代替実装は、ナノ秒精度を必要としない多くのアプリケーションでパフォーマンスの向上と省メモリが期待できる。

変数BOOST_DATE_TIME_POSIX_TIME_STD_CONFIGはbuild/Jamfileで定義されており、これらのオプションを選択する。 64bit整数版を使う場合、単にJamfileからこの定義を削除する。

Compiler/Portability Notes

Boost Date-Time libraryは、多くのコンパイラでビルドされテストされた。 しかしながら、いくつかのコンパイラと標準ライブラリで問題がある。 これらの問題のいくつかは回避可能であるが、回避できない問題も残っている。 以下のコンパイラはライブラリの機能を完全にサポートしている。

  • GCC 3.0.3 on Linux
  • GCC 3.1 (cygwin)
  • MSVC 7

特に、標準ロケールに対するサポートが完全でないと iostream ベースの入出力サポートが制約される事がある。そういったコンパイラのために、より限定された文字列ベースの入出力を提供している。

以下のコンパイラ及び標準ライブラリはこの制約を含む

  • GCC 2.9x on Linux
  • Borland 5.1.1 and 5.6
  • MSVC 6 SP5

ComeauやMetroworksといった他のコンパイラでは、ライブラリの初期バージョンでテストに成功している。

Directory Structure

date_timeのディレクトリ構成はBoostに合わせて変更された。

ディレクトリ構成は次のようになっている

ディレクトリ 説明
/boost/date_time 共通ヘッダ及びテンプレート
/boost/date_time/gregoran グレゴリオ暦システムのヘッダファイル
/boost/date_time/posix_time Posix Time系のヘッダファイル
/libs/date_time/build ビルドファイルと出力ディレクトリ
/libs/date_time/test ジェネリックコードに関するテスト一式
/libs/date_time/test/gregorian グレゴリオ暦に関するテスト一式
/libs/date_time/examples/gregorian グレゴリオ暦に関する良いコード例
/libs/date_time/src/gregorian libboost_date_time用のcppファイル
/libs/date_time/test/posix_time Posix Time系に関するテスト一式
/libs/date_time/examples/posix_time 時間に関する良いコード例
/libs/date_time/src/posix_time 空 (ファイルが一つあるが、ソースコードではない)

Required Boost Libraries

このライブラリは以下のライブラリに依存している。

  • boost.tokenizer
  • boost.integer(cstdint)
  • boost.operators
  • boost::lexical_cast

よって、最低限これらのライブラリがインストールされている必要がある。


Last modified: Wed Aug 28 17:52:03 MST 2002 by Jeff Garland © 2000-2002

Japanese Translation Copyright (C) 2003 Shoji Shinohara.