Theolizer
Version.1.2.0
serializer for C++ / Do you want to update your classes easily ?
|
Theolizerは下記ライブラリを用意しています。
リンク種別名 | Theolizer | boost | 標準 ランタイム | お薦めの選択 |
---|---|---|---|---|
StaticWithBoost | 静的リンク | 静的リンク(同梱) | 動的リンク | あなたのプログラムがboostを使っていない時 |
Static | 静的リンク | 静的リンク(非同梱) | 動的リンク | あなたのプログラムがboostを使っている時 (*1) |
Shared | 動的リンク | 静的リンク | 動的リンク | あなたのプログラムがboostを使っていて Theolizerライブラリのビルドを避けたい時 (*2) |
(*1) お使いのboostのバージョンがTholizerのboostのバージョンと異なる場合、Theolizerライブラリのビルドが必要になります。
(*2) Theolizerの動的リンク・ライブラリをパスの通ったフォルダへ置いて下さい
StaticとSharedは、それぞれ通常の静的リンク・ライブラリ、動的リンク・ライブラリです。
あなたのプロジェクトのCMakeLists.txtに下記を追加して下さい。
project(<あなたのプロジェクト名>) : find_package(THEOLIZER) : add_executable(<ターゲット名>) or add_library(<ターゲット名>) : setup_theolizer(<ターゲット名> <リンク種別>)
<ターゲット名>
はTheolizerライブラリをリンクするあなたのプログラムを指定します。 add_executable()やadd_library()のターゲット名です。
<リンク種別>
はリンクするTheolizerライブラリの種別を指定します。 StaticWithBoost、Static、Sharedのどれかを指定して下さい。
CMakeLists.txt作成後、THEOLIZER_DIRに Theolizerルート・フォルダ を設定し、CMakeでプロジェクトを生成して下さい。
TheolizerのGitHubリポジトリのトップ・ページにあるexampleのソース・コードとCMakeLists.txtを source/samples/example に置いています。これは「2.CMakeを使う場合」のサンプルとなります。
適切なビルド・フォルダを作成して、そこで下記コマンドを実行することで、プロジェクト生成→ビルド→テスト実行が行われます。
全てsource/samples/exampleフォルダで作業して下さい。
なお、下記は全てReleaseビルドの例です。Debugビルドする時は、Releaseの代わりにDebugを指定して下さい。
mkdir msvc32 cd msvc32 cmake -G "Visual Studio 14" .. -DTHEOLIZER_DIR=<Theolizerルート・フォルダ> cmake --build . --config Release --target BuildTest
mkdir msvc64 cd msvc64 cmake -G "Visual Studio 14 Win64" .. -DTHEOLIZER_DIR=<Theolizerルート・フォルダ> cmake --build . --config Release --target BuildTest
mkdir mingw cd mingw cmake -G "MinGW Makefiles" .. -DTHEOLIZER_DIR=<Theolizerルート・フォルダ> -DCMAKE_BUILD_TYPE=Release make BuildTest
mkdir gcc cd gcc cmake -G "Unix Makefiles" .. -DTHEOLIZER_DIR=<Theolizerルート・フォルダ> -DCMAKE_BUILD_TYPE=Release make BuildTest
「4-3.Theolizerドライバが割り込む仕組み 」にて仕組み記述しています。また「5.ファイル構成 」に<Theolizerルート・フォルダ>
からのフォルダ構成を記載しています。これらを参考に下記をビルド・プロジェクトへ設定下さい。
コンパイラ・オプション | 指定内容 |
---|---|
コンパイラ | Theolizerルート・フォルダ/bin/TheolizerDriver |
インクルード・パス | Theolizerルート・フォルダ/include |
ライブラリ・パス | Theolizerルート・フォルダ/lib |
ライブラリ・ファイル | 「1.Theolizerライブラリの選択 」で選択したライブラリ。 ファイル名は「5.ファイル構成 」参照。 |
マクロ定義 | THEOLIZER_DO_PROCESS |
マクロ定義(Visual C++の場合) | theolizer_original_compiler=<元コンパイラのパス> |
オプション指定(その他の場合) | --theolizer_original_compiler=<元コンパイラのパス> |
Sharedの場合は追加マクロ定義 | THEOLIZER_DYN_LINK |
Theolizerルート・フォルダからの相対パスにて各ファイルが存在する場所を示します。
相対パス | ファイル種別 | ファイル名 |
---|---|---|
ルート | cmakeのfind_package用 Theolizerのライセンス(GPLv3) | THEOLIZERConfig.cmake,theolizer.props.in LICENSE.TXT |
bin | Theolizerドライパ | TheolizerDriver.exe |
include/theolizer | ヘッダ・ファイル群 | *.h , *.inc |
lib | StaticWithBoost(Release)ライブラリ | TheolizerLibStaticWithBoost.lib |
Static(Release)ライブラリ | TheolizerLibStatic.lib | |
Shared(Release)ライブラリ | TheolizerLibShared.dll | |
StaticWithBoost(Debug)ライブラリ | TheolizerLibStaticWithBoostd.lib | |
Static(Debug)ライブラリ | TheolizerLibStaticd.lib | |
Shared(Debug)ライブラリ | TheolizerLibSharedd.dll | |
msbuild-bin | Theolizerドライパをリネームしたファイル | cl.exe |
other_licenses | Theolizerにリンクしている他プロジェクトのライセンス | LICENSE-*.txt |
注)インクルード・パスは、include/theolizerではなく、includeを指定して下さい。
下記は各種補助ファイル群です。
相対パス | ファイル種別 | ファイル名 |
---|---|---|
doc/ja | 詳細ドキュメント | index.html, html/*.* |
lib | StaticWithBoost(Release)テスト用ライブラリ | TheolizerTestStaticWithBoost.lib |
Static(Release)テスト用ライブラリ | TheolizerTestStatic.lib | |
Shared(Release)テスト用ライブラリ | TheolizerTestShared.dll | |
StaticWithBoost(Debug)テスト用ライブラリ | TheolizerTestStaticWithBoostd.lib | |
Static(Debug)テスト用ライブラリ | TheolizerTestStaticd.lib | |
Shared(Debug)テスト用ライブラリ | TheolizerTestSharedd.dll | |
samples | サンプル・プログラム | CMakeLists.txt, *.cpp, *.h |
注)テスト用ライブラリは、Theolizerの自動テストで使用しているライブラリです。
相対パス | ファイル種別 | ファイル名 |
---|---|---|
ルート | cmakeのfind_package用 Theolizerのライセンス(GPLv3) | THEOLIZERConfig.cmake LICENSE.TXT |
bin | Theolizerドライパ | TheolizerDriver.exe |
include/theolizer | ヘッダ・ファイル群 | *.h , *.inc |
lib/Relase | StaticWithBoost(Release)ライブラリ | libTheolizerLibStaticWithBoost.a |
Static(Release)ライブラリ | libTheolizerLibStatic.a | |
Shared(Release)ライブラリ | libTheolizerLibShared.so | |
lib/Debug | StaticWithBoost(Debug)ライブラリ | libTheolizerLibStaticWithBoost.a |
Static(Debug)ライブラリ | libTheolizerLibStatic.a | |
Shared(Debug)ライブラリ | libTheolizerLibShared.so | |
other_licenses | Theolizerにリンクしている他プロジェクトのライセンス | LICENSE-*.txt |
注)インクルード・パスは、include/theolizerではなく、includeを指定して下さい。
下記は各種補助ファイル群です。
相対パス | ファイル種別 | ファイル名 |
---|---|---|
doc/ja | 詳細ドキュメント | index.html, html/*.* |
lib/Relase | StaticWithBoost(Release)テスト用ライブラリ | libTheolizerTestStaticWithBoost.a |
Static(Release)テスト用ライブラリ | libTheolizerTestStatic.a | |
Shared(Release)テスト用ライブラリ | libTheolizerTestShared.so | |
lib/Debug | StaticWithBoost(Debug)テスト用ライブラリ | libTheolizerTestStaticWithBoost.a |
Static(Debug)テスト用ライブラリ | libTheolizerTestStatic.a | |
Shared(Debug)テスト用ライブラリ | libTheolizerTestShared.so | |
samples | サンプル・プログラム | CMakeLists.txt, *.cpp, *.h |
注)テスト用ライブラリは、Theolizerの自動テストで使用しているライブラリです。