transactd 2.4.5-x64-mswin64-100 → 3.0.0-x64-mswin64-100
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/CMakeLists.txt +1 -1
- data/README-JA.md +52 -529
- data/README.md +52 -523
- data/bin/2.0/transactd.so +0 -0
- data/bin/2.1/transactd.so +0 -0
- data/bin/2.2/transactd.so +0 -0
- data/bin/common/tdclc_64_3_0.dll +0 -0
- data/bin/common/tdclcpp_vc100_64mr_3_0.dll +0 -0
- data/build/common/system.cmake +2 -1
- data/source/bzs/test/tdclrb/transactd_datetime_spec.rb +0 -5
- data/source/bzs/test/tdclrb/transactd_pool_spec.rb +2 -0
- data/source/bzs/test/tdclrb/transactd_spec.rb +39 -16
- data/source/bzs/test/tdclrb/transactd_v3_spec.rb +748 -0
- data/transactd.gemspec +2 -2
- metadata +5 -10
- data/BUILD_UNIX-JA.md +0 -161
- data/BUILD_WIN-JA.md +0 -326
- data/README_ORMSRCGEN-JA.md +0 -115
- data/README_ORMSRCGEN.md +0 -118
- data/RELEASE_NOTE-JA.md +0 -356
- data/RELEASE_NOTE.md +0 -360
- data/bin/common/tdclc_64_2_4.dll +0 -0
- data/bin/common/tdclcpp_vc100_64mr_2_4.dll +0 -0
data/transactd.gemspec
CHANGED
@@ -59,7 +59,7 @@ spec_build = Gem::Specification.new do |s|
|
|
59
59
|
s.files += Dir.glob('build/common/copyifgreater.*')
|
60
60
|
s.files += Dir.glob('build/common/system.*')
|
61
61
|
s.files += Dir.glob('source/bzs/test/tdclrb/*')
|
62
|
-
s.files += Dir.glob('./*')
|
62
|
+
s.files += Dir.glob('./*').reject { |f| f.match(/RELEASE_NOTE/) || f.match(/BUILD_/) }
|
63
63
|
else
|
64
64
|
#
|
65
65
|
# source code package
|
@@ -72,7 +72,7 @@ spec_build = Gem::Specification.new do |s|
|
|
72
72
|
s.files += Dir.glob('build/swig/*') + Dir.glob('build/swig/ruby/*')
|
73
73
|
s.files += Dir.glob('build/swig/ruby/**/*') + Dir.glob('build/tdclrb/**/*')
|
74
74
|
s.files += Dir.glob('build/tdclc/**/*') + Dir.glob('build/tdclcpp/**/*')
|
75
|
-
s.files += Dir.glob('./*')
|
75
|
+
s.files += Dir.glob('./*').reject { |f| f.match(/RELEASE_NOTE/) || f.match(/BUILD_/) }
|
76
76
|
if RUBY_PLATFORM =~ /mswin/ || RUBY_PLATFORM =~ /mingw/
|
77
77
|
# add prebuilt binary
|
78
78
|
tdclc_file = File.join('bin', 'common', 'tdclc_*.*')
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: transactd
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version:
|
4
|
+
version: 3.0.0
|
5
5
|
platform: x64-mswin64-100
|
6
6
|
authors:
|
7
7
|
- BizStation Corp.
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2015-
|
11
|
+
date: 2015-12-25 00:00:00.000000000 Z
|
12
12
|
dependencies: []
|
13
13
|
description: Transactd client for ruby gem
|
14
14
|
email: transactd@bizstation.jp
|
@@ -21,8 +21,8 @@ files:
|
|
21
21
|
- bin/2.1/transactd.so
|
22
22
|
- bin/2.2/transactd.so
|
23
23
|
- build/tdclrb/bldgem/extconf.rb
|
24
|
-
- bin/common/
|
25
|
-
- bin/common/
|
24
|
+
- bin/common/tdclcpp_vc100_64mr_3_0.dll
|
25
|
+
- bin/common/tdclc_64_3_0.dll
|
26
26
|
- build/tdclrb/gem/detect.rb
|
27
27
|
- build/tdclrb/gem/helper.rb
|
28
28
|
- build/tdclrb/gem/INSTALLLOG.win32
|
@@ -39,17 +39,12 @@ files:
|
|
39
39
|
- source/bzs/test/tdclrb/transactd_kanjischema_spec.rb
|
40
40
|
- source/bzs/test/tdclrb/transactd_pool_spec.rb
|
41
41
|
- source/bzs/test/tdclrb/transactd_spec.rb
|
42
|
-
-
|
43
|
-
- ./BUILD_WIN-JA.md
|
42
|
+
- source/bzs/test/tdclrb/transactd_v3_spec.rb
|
44
43
|
- ./CMakeLists.txt
|
45
44
|
- ./COPYING
|
46
45
|
- ./index_ja.html
|
47
46
|
- ./README-JA.md
|
48
47
|
- ./README.md
|
49
|
-
- ./README_ORMSRCGEN-JA.md
|
50
|
-
- ./README_ORMSRCGEN.md
|
51
|
-
- ./RELEASE_NOTE-JA.md
|
52
|
-
- ./RELEASE_NOTE.md
|
53
48
|
- ./transactd.gemspec
|
54
49
|
homepage: http://www.bizstation.jp/ja/transactd
|
55
50
|
licenses:
|
data/BUILD_UNIX-JA.md
DELETED
@@ -1,161 +0,0 @@
|
|
1
|
-
Transactd ビルドガイド for Unix
|
2
|
-
============================================================
|
3
|
-
|
4
|
-
1. ビルド環境の準備
|
5
|
-
------------------------------------------------------------
|
6
|
-
Transactd Plugin および Transactd クライアントは、Unix上のGCC(64bit)
|
7
|
-
でビルドできます。ここでは、以下の環境でのビルドを想定して進めます。
|
8
|
-
|
9
|
-
* Ubuntu 12.10 x86_64
|
10
|
-
* gcc 4.4.6
|
11
|
-
|
12
|
-
ビルドにはCMake 2.8.12以上、gccバージョン4.4.6以上、boost 1.58(以上)が必須です。
|
13
|
-
また、CentOS(GCC4.4以上 or clang LLVM 3.4)、Mac OS X 10.9(GCC4.4以上
|
14
|
-
または Xcode5.1 LLVM 3.4)でも同様にビルドできます。
|
15
|
-
|
16
|
-
|
17
|
-
2. CMakeのインストール
|
18
|
-
------------------------------------------------------------
|
19
|
-
[CMake](http://www.cmake.org)をインストールします。
|
20
|
-
```
|
21
|
-
sudo aptitude install cmake
|
22
|
-
```
|
23
|
-
|
24
|
-
CentOSでは
|
25
|
-
```
|
26
|
-
sudo yum install cmake
|
27
|
-
```
|
28
|
-
|
29
|
-
Mac OS Xでは、バイナリ配布をアプリケーションフォルダにインストールして
|
30
|
-
`/Applications/CMake.app/Contents/bin`にパスを通します。
|
31
|
-
|
32
|
-
|
33
|
-
|
34
|
-
3. Boost C++ Libraries のダウンロードとビルド
|
35
|
-
------------------------------------------------------------
|
36
|
-
[Boostのダウンロードページ](http://www.boost.org/users/download)から
|
37
|
-
ソースコードをダウンロードし、解凍します。
|
38
|
-
```
|
39
|
-
cd ~
|
40
|
-
wget http://sourceforge.net/projects/boost/files/boost/1.58.0/boost_1_58_0.tar.gz/download -O boost_1_58_0.tar.gz
|
41
|
-
tar xzf boost_1_58_0.tar.gz
|
42
|
-
```
|
43
|
-
|
44
|
-
以下のコマンドを実行しBoostのビルドを行います。
|
45
|
-
```
|
46
|
-
cd ~/boost_1_58_0
|
47
|
-
./bootstrap.sh --with-libraries=chrono,filesystem,system,thread,timer,serialization,program_options
|
48
|
-
./b2 cxxflags=-fPIC
|
49
|
-
```
|
50
|
-
|
51
|
-
|
52
|
-
|
53
|
-
4. サーバープラグインとクライアントの両方をビルド
|
54
|
-
------------------------------------------------------------
|
55
|
-
クライアントのみをビルドしたい場合はこのステップを飛ばしてください。
|
56
|
-
|
57
|
-
### 4-1 MySQLソースコードのダウンロード
|
58
|
-
[MySQL Community Serverのダウンロードページ](http://dev.mysql.com/downloads/mysql)
|
59
|
-
からソースコードをダウンロードし、解凍します。
|
60
|
-
```
|
61
|
-
cd ~
|
62
|
-
wget http://cdn.mysql.com/Downloads/MySQL-5.6/mysql-5.6.25.tar.gz
|
63
|
-
tar xzf mysql-5.6.25.tar.gz
|
64
|
-
```
|
65
|
-
|
66
|
-
|
67
|
-
### 4-2 Transactd Pluginソースコードのダウンロード
|
68
|
-
[Transactd Pluginのダウンロードページ](http://www.bizstation.jp/al/transactd/download/index.asp)
|
69
|
-
からソースコードをダウンロードします。
|
70
|
-
|
71
|
-
ダウンロードしたソースコードは、4-1で展開したMySQLソースコードの
|
72
|
-
pluginディレクトリに展開します。
|
73
|
-
```
|
74
|
-
cd ~
|
75
|
-
wget http://www.bizstation.jp/al/transactd/download/transactd-2.4.2/transactd-source-2.4.2.zip
|
76
|
-
#Mac OS Xでは
|
77
|
-
#curl -O http://www.bizstation.jp/al/transactd/download/transactd-2.4.2/transactd-source-2.4.2.zip
|
78
|
-
unzip -q transactd-source-2.4.2.zip -d transactd
|
79
|
-
mv transactd ~/mysql-5.6.25/plugin/
|
80
|
-
```
|
81
|
-
|
82
|
-
|
83
|
-
### 4-3 CMakeの実行
|
84
|
-
MySQL 5.5/5.6 MariaDB 5.5/10.0の場合は以下のコマンドを実行します。オプションの意味はコマンドの後に記載しています。
|
85
|
-
```
|
86
|
-
cd ~/mysql-5.6.25
|
87
|
-
mkdir x64
|
88
|
-
cd x64
|
89
|
-
cmake .. -DBOOST_ROOT=~/boost_1_58_0 \
|
90
|
-
-DCMAKE_INSTALL_PREFIX=/usr/local/mysql-5.6.25 \
|
91
|
-
-DTRANSACTD_CLIENTS_PREFIX=/usr/lib \
|
92
|
-
-DTRANSACTD_PREFIX=/usr/local/transactd
|
93
|
-
```
|
94
|
-
MySQL 5.7の場合は以下のコマンドを実行します。
|
95
|
-
```
|
96
|
-
cd ~/mysql-5.7.8-rc
|
97
|
-
mkdir x64
|
98
|
-
cd x64
|
99
|
-
cmake .. -DBOOST_ROOT=~/boost_1_58_0 \
|
100
|
-
-DWITH_BOOST=~/boost_1_58_0 \
|
101
|
-
-DCMAKE_INSTALL_PREFIX=/usr/local/mysql-5.7.8-rc \
|
102
|
-
-DTRANSACTD_CLIENTS_PREFIX=/usr/lib \
|
103
|
-
-DTRANSACTD_PREFIX=/usr/local/transactd
|
104
|
-
```
|
105
|
-
* `CMAKE_INSTALL_PREFIX` に指定するのは、これからビルドするMySQLのインストール先
|
106
|
-
です。
|
107
|
-
***すでにインストール済みのMySQLがある場合に、それと同じパスを指定すると、上書
|
108
|
-
きされてしまいます。上書きしたくないときは異なるパスを指定してください。***
|
109
|
-
* `TRANSACTD_CLIENTS_PREFIX` に指定するのは、これからビルドするクライアントの
|
110
|
-
インストール先です。デフォルトは`/usr/lib`です。
|
111
|
-
* `TRANSACTD_PREFIX`に指定するのは、これからビルドするテストやベンチマークの
|
112
|
-
プログラムのインストール先です。デフォルトは`/usr/local/transactd`です。
|
113
|
-
|
114
|
-
|
115
|
-
### 4-4 ビルド
|
116
|
-
CMakeが完了するとMakefileが生成されているので、makeコマンドでビルド・インストール
|
117
|
-
します。
|
118
|
-
```
|
119
|
-
make
|
120
|
-
make install
|
121
|
-
```
|
122
|
-
|
123
|
-
|
124
|
-
|
125
|
-
5. クライアントライブラリのみをビルド
|
126
|
-
------------------------------------------------------------
|
127
|
-
### 5-1 Transactd Pluginソースコードのダウンロード
|
128
|
-
[Transactd Pluginのダウンロードページ](http://www.bizstation.jp/al/transactd/download/index.asp)
|
129
|
-
からソースコードをダウンロードします。
|
130
|
-
```
|
131
|
-
cd ~
|
132
|
-
wget http://www.bizstation.jp/al/transactd/download/transactd-2.4.2/transactd-source-2.4.2.zip
|
133
|
-
#Mac OS Xでは
|
134
|
-
#curl curl -O http://www.bizstation.jp/al/transactd/download/transactd-2.4.2/transactd-source-2.4.2.zip
|
135
|
-
unzip -q transactd-source-2.4.2.zip -d transactd
|
136
|
-
```
|
137
|
-
|
138
|
-
### 5-2 CMakeの実行
|
139
|
-
以下のコマンドを実行します。オプションの意味はコマンドの後に記載しています。
|
140
|
-
```
|
141
|
-
cd ~/transactd
|
142
|
-
mkdir x64
|
143
|
-
cd x64
|
144
|
-
cmake .. -DWITH_TRANSACTD_SERVER=OFF -DWITH_TRANSACTD_CLIENTS=ON \
|
145
|
-
-DBOOST_ROOT=~/boost_1_58_0 \
|
146
|
-
-DTRANSACTD_CLIENTS_PREFIX=/usr/lib \
|
147
|
-
-DTRANSACTD_PREFIX=/usr/local/transactd
|
148
|
-
```
|
149
|
-
* `TRANSACTD_CLIENTS_PREFIX` に指定するのは、これからビルドするクライアントの
|
150
|
-
インストール先です。デフォルトは`/usr/lib`です。
|
151
|
-
* `TRANSACTD_PREFIX`に指定するのは、これからビルドするテストやベンチマークの
|
152
|
-
プログラムのインストール先です。デフォルトは`/usr/local/transactd`です。
|
153
|
-
|
154
|
-
|
155
|
-
### 5-3 ビルド
|
156
|
-
CMakeが完了するとMakefileが生成されているので、makeコマンドでビルド・インストール
|
157
|
-
します。
|
158
|
-
```
|
159
|
-
make
|
160
|
-
make install
|
161
|
-
```
|
data/BUILD_WIN-JA.md
DELETED
@@ -1,326 +0,0 @@
|
|
1
|
-
Transactd ビルドガイド for Windows
|
2
|
-
============================================================
|
3
|
-
|
4
|
-
1. コンパイラの準備
|
5
|
-
------------------------------------------------------------
|
6
|
-
Transactd Plugin および Transactd クライアントは、Windows上のVisual Studio
|
7
|
-
(32bit/64bit)でビルドできます。
|
8
|
-
Transactd Pluginは、MySQLとともにビルドしますので、MySQLの要求するコンパイラに
|
9
|
-
合わせてビルドします。MySQL 5.7は、Visual Studio Express 2013、それ以外の
|
10
|
-
MySQL/MariaDBのバージョンはVisual Studio Express 2010を使用してビルドします。
|
11
|
-
|
12
|
-
クライアントはEmbarcaderoのコンパイラーC++ Builder XEシリーズでもビルドできます。
|
13
|
-
[クライアントのみをビルド]の項を参照してください。)
|
14
|
-
|
15
|
-
|
16
|
-
MySQL 5.7は以下のコンパイラをダウンロードしてインストールします。
|
17
|
-
* [Visual Studio Express 2013 with Update 5 for Windows Desktop
|
18
|
-
ダウンロードページ(Microsoft)]
|
19
|
-
(http://go.microsoft.com/fwlink/?LinkId=532500&clcid=0x411)
|
20
|
-
|
21
|
-
MySQL 5.5/5.6、MariaDB 5.5/10.0は以下のコンパイラとSDKをダウンロードし
|
22
|
-
てインストールします。
|
23
|
-
|
24
|
-
* [Visual Studio 2010 Express ダウンロードページ(Microsoft)](
|
25
|
-
http://www.microsoft.com/visualstudio/jpn/downloads#d-2010-express)
|
26
|
-
* [Windows SDK for Windows 7 ダウンロードページ(Microsoft Download Center)](
|
27
|
-
http://www.microsoft.com/en-us/download/details.aspx?id=8442)
|
28
|
-
(GRMSDKX_EN_DVD.iso をダウンロードし、マウントしてインストーラを実行)
|
29
|
-
|
30
|
-
|
31
|
-
### Visual Studioコマンドプロンプトの起動方法
|
32
|
-
後述する手順の中で、Visual Studioコマンドプロンプトを開くことがあります。
|
33
|
-
|
34
|
-
MySQL 5.5/5.6、MariaDB 5.5/10.0は以下の手順でVisual Studioコマンドプロンプトを
|
35
|
-
開きます。
|
36
|
-
|
37
|
-
[32Bit]
|
38
|
-
* [スタートメニュー]-[すべてのプログラム]-[Microsoft Visual Studio 2010 Express]-
|
39
|
-
[Visual Studio コマンドプロンプト (2010)]を選択し起動します。
|
40
|
-
|
41
|
-
[64Bit]
|
42
|
-
*Visual Studio 2010 Express には、64bit版ビルドツール用の Visual Studioコマンド
|
43
|
-
プロンプトが付属しません。代わりに、64bit用ビルドツールのパスを設定するための
|
44
|
-
バッチファイルを作成し、そこから起動します。
|
45
|
-
以下の内容のファイルを作成し、`set64env.cmd`という名前でデスクトップに保存します。
|
46
|
-
```
|
47
|
-
%comspec% /k "C:\Program Files\Microsoft SDKs\Windows\v7.1\Bin\SetEnv.cmd" /x64
|
48
|
-
```
|
49
|
-
|
50
|
-
MySQL 5.7は以下の手順でVisual Studioコマンドプロンプトを開きます。
|
51
|
-
[32Bit]
|
52
|
-
* [スタートメニュー]-[すべてのプログラム]-[Microsoft Visual Studio 2013]-
|
53
|
-
[Visual Studio ツール]-[VS2013 x86 Native Tools コマンド プロンプト]を選択し起動します。
|
54
|
-
|
55
|
-
[64Bit]
|
56
|
-
* [スタートメニュー]-[すべてのプログラム]-[Microsoft Visual Studio 2013]-
|
57
|
-
[Visual Studio ツール]-[VS2013 x64 Cross Tools コマンド プロンプト]を選択し起動します。
|
58
|
-
|
59
|
-
|
60
|
-
|
61
|
-
2. CMakeのダウンロードとインストール
|
62
|
-
------------------------------------------------------------
|
63
|
-
[CMake ダウンロードページ](http://www.cmake.org/cmake/resources/software.html)か
|
64
|
-
らWindows (Win32 Installer) cmake-2.8.12.2-win32-x86.exe をダウンロードし実行します。
|
65
|
-
|
66
|
-
途中、「Add CMake to the system PATH for all(or current) users」を選択し、
|
67
|
-
cmakeの実行ファイルにパスが通るようにします。
|
68
|
-
|
69
|
-
|
70
|
-
|
71
|
-
3. Boost C++ Libraries のダウンロードとインストール
|
72
|
-
------------------------------------------------------------
|
73
|
-
boostはソースからビルドします。
|
74
|
-
|
75
|
-
### ソースからのビルド
|
76
|
-
[Boostのダウンロードページ](http://www.boost.org/users/download)からソースコードを
|
77
|
-
ダウンロードし、解凍します。ここでは、以下のフォルダに保存したものとします。
|
78
|
-
```
|
79
|
-
C:\boost\boost_1_58_0
|
80
|
-
```
|
81
|
-
|
82
|
-
Visual Studioコマンドプロンプトを起動します。以下のコマンドを実行し、Boostのビル
|
83
|
-
ドを行います。
|
84
|
-
```
|
85
|
-
cd C:\boost\boost_1_58_0
|
86
|
-
bootstrap.bat
|
87
|
-
|
88
|
-
@REM Visula studio 2010 64bitの場合
|
89
|
-
bjam.exe toolset=msvc-10.0 threading=multi address-model=64 architecture=x86 ^
|
90
|
-
--with-chrono --with-filesystem --with-system --with-thread --with-timer ^
|
91
|
-
--with-serialization --with-program_options ^
|
92
|
-
variant=debug,release link=static runtime-link=static,shared
|
93
|
-
|
94
|
-
@REM Visula studio 2010 32bitの場合
|
95
|
-
bjam.exe toolset=msvc-10.0 threading=multi architecture=x86 ^
|
96
|
-
--with-chrono --with-filesystem --with-system --with-thread --with-timer ^
|
97
|
-
--with-serialization --with-program_options ^
|
98
|
-
variant=debug,release link=static runtime-link=static,shared
|
99
|
-
|
100
|
-
@REM Visula studio 2013 64bitの場合
|
101
|
-
bjam.exe toolset=msvc-12.0 threading=multi address-model=64 architecture=x86 ^
|
102
|
-
--with-chrono --with-filesystem --with-system --with-thread --with-timer ^
|
103
|
-
--with-serialization --with-program_options ^
|
104
|
-
variant=debug,release link=static runtime-link=static,shared
|
105
|
-
|
106
|
-
@REM Visula studio 2013 32bitの場合
|
107
|
-
bjam.exe toolset=msvc-12.0 threading=multi architecture=x86 ^
|
108
|
-
--with-chrono --with-filesystem --with-system --with-thread --with-timer ^
|
109
|
-
--with-serialization --with-program_options ^
|
110
|
-
variant=debug,release link=static runtime-link=static,shared
|
111
|
-
|
112
|
-
```
|
113
|
-
|
114
|
-
4. サーバープラグインとクライアントの両方をビルド
|
115
|
-
------------------------------------------------------------
|
116
|
-
クライアントのみをビルドしたい場合はこのステップを飛ばしてください。
|
117
|
-
|
118
|
-
### 4-1 MySQLソースコードのダウンロード
|
119
|
-
[MySQL Community Serverのダウンロードページ](http://dev.mysql.com/downloads/mysql)
|
120
|
-
からソースコードをダウンロードします。
|
121
|
-
「Select Platform」のプルダウンから「Source Code」を選択し、Windows ZIP形式の
|
122
|
-
ファイルをダウンロードします。
|
123
|
-
|
124
|
-
ダウンロードした圧縮ファイルを解凍します。ここでは、以下のフォルダに保存したも
|
125
|
-
のとします。
|
126
|
-
```
|
127
|
-
C:\Users\Public\Documents\mysql-5.6.25
|
128
|
-
```
|
129
|
-
|
130
|
-
|
131
|
-
### 4-2 Transactd Pluginソースコードのダウンロード
|
132
|
-
[Transactd Pluginのダウンロードページ](http://www.bizstation.jp/al/transactd/download/index.asp)
|
133
|
-
からソースコードをダウンロードします。
|
134
|
-
ソースを展開するフォルダ transactd をMySQLのソースツリー内のpluginフォルダに作成
|
135
|
-
します。
|
136
|
-
```
|
137
|
-
md C:\Users\Public\Documents\mysql-5.6.25\plugin\transactd
|
138
|
-
```
|
139
|
-
ダウンロードしたソースコードを、上記で作成したtransactdフォルダに展開します。
|
140
|
-
ここでは、以下のようなフォルダ構造になります。
|
141
|
-
```
|
142
|
-
C:\Users\Public\Documents\mysql-5.6.25\plugin\transactd
|
143
|
-
```
|
144
|
-
|
145
|
-
|
146
|
-
### 4-3 MySQLソースコードの修正
|
147
|
-
|
148
|
-
#### 4-3.1 パッチの適用
|
149
|
-
Transactd Pluginソースコードのpatchディレクトリにmysqlのソースコードを修正する
|
150
|
-
ためのパッチが含まれています。そのパッチをmysqlのソースディレクトリにコピー
|
151
|
-
します。(パッチはmysql/mariadbのバージョンごとに異なる名前になっています。
|
152
|
-
パッチ名のバージョンの部分は合ったものに変更してください。)
|
153
|
-
```
|
154
|
-
cd C:\Users\Public\Documents\mysql-5.6.25
|
155
|
-
copy plugin\transactd\patch\transactd-win-mysql-5.6.25.patch *
|
156
|
-
```
|
157
|
-
|
158
|
-
patchコマンドを使用できる環境(Cygwin、Git Bashなど)があるならば、以下の
|
159
|
-
コマンドでパッチを適用します。
|
160
|
-
```
|
161
|
-
cd C:\Users\Public\Documents\mysql-5.6.25
|
162
|
-
patch -p0 -i transactd-win-mysql-5.6.25.patch
|
163
|
-
```
|
164
|
-
|
165
|
-
patchコマンドがない場合、[宮坂 賢 氏のGNU patch 2.5.4 (Win32 版)](
|
166
|
-
http://cetus.sakura.ne.jp/softlab/toolbox1/index.html#difpat)をダウンロードし
|
167
|
-
使用します。
|
168
|
-
ここでは、以下のフォルダに保存したものとします。
|
169
|
-
```
|
170
|
-
C:\Program Files (x86)\patc254w
|
171
|
-
```
|
172
|
-
以下のコマンドでパッチを適用します。
|
173
|
-
```
|
174
|
-
cd C:\Users\Public\Documents\mysql-5.6.25
|
175
|
-
"C:\Program Files (x86)\patc254w\patch.exe" -p0 --binary -i transactd-win-mysql-5.6.25.patch
|
176
|
-
```
|
177
|
-
|
178
|
-
#### 4-3.2 ソースコードのエンコーディングの修正
|
179
|
-
日本語Windows環境でビルドする場合、一部のソースコードのエンコーディングを変更する
|
180
|
-
必要があります。以下のファイルをVisual Studioから開き、[名前を付けて保存]-
|
181
|
-
[上書き保存]の右の▼をクリック-[エンコード付きで保存]を選択し、
|
182
|
-
「Unicode (UTF-8 シグネチャ付き)-コードページ 65001」で上書き保存します。
|
183
|
-
|
184
|
-
* sql\sql_locale.cc
|
185
|
-
* storage\perfschema\unittest\pfs_connect_attr-t.cc
|
186
|
-
|
187
|
-
|
188
|
-
### 4-4 CMakeの実行
|
189
|
-
Visual Studioコマンドプロンプトを起動して、以下のコマンドを実行します。
|
190
|
-
```
|
191
|
-
@REM Visual studio 2010 64Bitの場合
|
192
|
-
cd C:\Users\Public\Documents\mysql-5.6.25
|
193
|
-
md x64
|
194
|
-
cd x64
|
195
|
-
cmake .. -G "Visual Studio 10 Win64" ^
|
196
|
-
-DBOOST_ROOT="C:\boost\boost_1_58_0"
|
197
|
-
|
198
|
-
@REM Visual studio 2013 64Bitの場合
|
199
|
-
cd C:\Users\Public\Documents\mysql-5.7.8
|
200
|
-
md x64
|
201
|
-
cd x64
|
202
|
-
cmake .. -G "Visual Studio 12 Win64" ^
|
203
|
-
-DWITH_BOOST="C:\boost\boost_1_58_0" ^
|
204
|
-
-DBOOST_ROOT="C:\boost\boost_1_58_0"
|
205
|
-
|
206
|
-
```
|
207
|
-
|
208
|
-
|
209
|
-
### 4-5 ビルド
|
210
|
-
CMakeが完了すると、以下のソリューションファイルが生成されています。
|
211
|
-
```
|
212
|
-
C:\Users\Public\Documents\mysql-5.6.25\x64\MySQL.sln
|
213
|
-
```
|
214
|
-
MySQL.slnをVisual Studioで開きます。メニューの[ビルド]-[構成マネージャー]から構
|
215
|
-
成を「Release」に変更し、[ビルド]-[ソリューションのビルド]をクリックします。
|
216
|
-
|
217
|
-
バイナリは以下のフォルダに出力されます。
|
218
|
-
```
|
219
|
-
C:\Users\Public\Documents\mysql-5.6.25\x64\sql\lib\plugin
|
220
|
-
C:\Users\Public\Documents\mysql-5.6.25\x64\plugin\transactd\bin
|
221
|
-
C:\Users\Public\Documents\mysql-5.6.25\x64\plugin\transactd\lib
|
222
|
-
```
|
223
|
-
|
224
|
-
|
225
|
-
|
226
|
-
5. クライアントのみをビルド
|
227
|
-
------------------------------------------------------------
|
228
|
-
### 5-1 Transactd Pluginソースコードのダウンロード
|
229
|
-
[Transactd Pluginのダウンロードページ](http://www.bizstation.jp/al/transactd/download/index.asp)
|
230
|
-
からソースコードをダウンロードします。
|
231
|
-
|
232
|
-
ここでは、以下のフォルダに展開したとします。
|
233
|
-
```
|
234
|
-
C:\Users\Public\Documents\transactd
|
235
|
-
```
|
236
|
-
(EmbarcaderoのC++BuilderXEシリーズの場合は[5-4 C++BuilderXEシリーズでのビルド]に進んでください。)
|
237
|
-
|
238
|
-
|
239
|
-
### 5-2 CMakeの実行
|
240
|
-
Visual Studioコマンドプロンプトを起動して、以下のコマンドを実行します。
|
241
|
-
```
|
242
|
-
@REM Visual studio 2010 64Bitの場合
|
243
|
-
cd C:\Users\Public\Documents\transactd
|
244
|
-
md x64
|
245
|
-
cd x64
|
246
|
-
cmake .. -G "Visual Studio 10 Win64" ^
|
247
|
-
-DBOOST_ROOT="C:\boost\boost_1_58_0" ^
|
248
|
-
-DWITH_TRANSACTD_SERVER=OFF -DWITH_TRANSACTD_CLIENTS=ON
|
249
|
-
|
250
|
-
@REM Visual studio 2013 64Bitの場合
|
251
|
-
cd C:\Users\Public\Documents\transactd
|
252
|
-
md x64
|
253
|
-
cd x64
|
254
|
-
cmake .. -G "Visual Studio 12 Win64" ^
|
255
|
-
-DBOOST_ROOT="C:\boost\boost_1_58_0" ^
|
256
|
-
-DWITH_TRANSACTD_SERVER=OFF -DWITH_TRANSACTD_CLIENTS=ON
|
257
|
-
|
258
|
-
```
|
259
|
-
|
260
|
-
|
261
|
-
### 5-3 ビルド
|
262
|
-
CMakeが完了すると、以下のソリューションファイル (TransactdClinet.sln)が生成されています。
|
263
|
-
(Version 2.4.0以前は tdcl.sln)
|
264
|
-
```
|
265
|
-
C:\Users\Public\Documents\transactd\x64\TransactdClinet.sln
|
266
|
-
```
|
267
|
-
TransactdClinet.slnをVisual Studioで開きます。メニューの[ビルド]-[構成マネージャー]から構
|
268
|
-
成を「Release」に変更し、[ビルド]-[ソリューションのビルド]をクリックしま
|
269
|
-
す。
|
270
|
-
|
271
|
-
バイナリは以下のフォルダに出力されます。
|
272
|
-
```
|
273
|
-
C:\Users\Public\Documents\transactd\x64\bin
|
274
|
-
C:\Users\Public\Documents\transactd\x64\lib
|
275
|
-
```
|
276
|
-
|
277
|
-
|
278
|
-
### 5-4 C++BuilderXEシリーズでのビルド
|
279
|
-
EmbarcaderoのC++BuilderXEシリーズの場合は
|
280
|
-
```
|
281
|
-
C:\Users\Public\Documents\Build\TransactdClient_bcb.groupproj
|
282
|
-
```
|
283
|
-
にてXE以降のコンパイラーでコンパイルできます。
|
284
|
-
|
285
|
-
コンパイルにはコンパイラー付属のboostライブラリがインストールされている必要が
|
286
|
-
あります。また、C++ Builderの[ツール]-[オプション]-[環境オプション]-[C++ オプション]
|
287
|
-
-[パスとディレクトリ]の[システムインクルードパス]に
|
288
|
-
```
|
289
|
-
32Bitの場合 $(CG_BOOST_ROOT)
|
290
|
-
64Bitの場合 $(CG_64_BOOST_ROOT)
|
291
|
-
```
|
292
|
-
を追加します。
|
293
|
-
ビルド構成は、Unicode版/Ansi版 Release/Debug 32Bit/64Bit があります。
|
294
|
-
出力は、bin libフォルダに生成されます。64Bitの場合は常に動的RTLとリンクが必要です。
|
295
|
-
|
296
|
-
以下はバージョンごとの補足事項です。
|
297
|
-
|
298
|
-
32Bit(すべてのXEバージョン)の場合、boost_program_optionsがコンパイルされていないため、
|
299
|
-
```
|
300
|
-
build\libboost_program_options-bcb1_39\libboost_program_options-bcb-mt-1_39.cbproj
|
301
|
-
```
|
302
|
-
にて事前にlibboost_program_options-bcb-mt-1_39.libを生成してください。
|
303
|
-
コンパイルの前に、下記のboostのソースの修正が必要です。
|
304
|
-
```
|
305
|
-
ファイル:$(CG_BOOST_ROOT)\boost_1_39\libs\program_options\src\variables_map.cpp
|
306
|
-
71行目 :v = variable_value(); --> variable_value vr;v = vr;
|
307
|
-
115行目 :m[key] = variable_value(def, true); --> variable_value vr(def, true);m[key] = vr;
|
308
|
-
```
|
309
|
-
|
310
|
-
XE2の場合、boost_serializationがコンパイルされていないため、
|
311
|
-
```
|
312
|
-
build\libboost_serialization-bcb-1_39\libboost_boost_serialization-bcb-mt-1_39.cbproj
|
313
|
-
```
|
314
|
-
にて事前にlibboost_serialization-bcb-mt-1_39.libを生成してください。
|
315
|
-
|
316
|
-
XE4 64Bitの場合、コンパイラバージョンがXE3と同じであるため、tdclcppを使用する
|
317
|
-
アプリケーションの自動リンクでtdclcpp_bc170_64x.libを探そうとします。しかしXE4で
|
318
|
-
生成されるdllはtdclcpp_bc180_64x.dllのため、libが見つからずリンクエラーが発生します。
|
319
|
-
XE4 64Bitでtdclcppとtdclstmtをコンパイルした際には、libのファイル名の180部分を170に
|
320
|
-
リネームし`tdclcpp_bc180_64x_xx.lib`と`tdclstmt_bc180_64x_xx.lib`にしてください。
|
321
|
-
|
322
|
-
XE6 64Bitの場合、boost_threadのコンパイルが通らないためboostのソースを修正します。
|
323
|
-
```
|
324
|
-
ファイル:$(CG_BOOST_ROOT)\boost_1_50\boost\asio\detail\impl\win_thread.ipp
|
325
|
-
52行目: ::QueueUserAPC(apc_function, thread_, 0); --> ::QueueUserAPC((PAPCFUNC)apc_function, thread_, 0);
|
326
|
-
```
|
data/README_ORMSRCGEN-JA.md
DELETED
@@ -1,115 +0,0 @@
|
|
1
|
-
ormsrcgen C++ O/Rマッピングソースコードジェネレータ
|
2
|
-
===============================================================================
|
3
|
-
ormsrcgen(32|64) はC++ O/Rマッピングのためのソースコードジェネレータです。
|
4
|
-
|
5
|
-
C++では動的にクラスを定義することはできないため、ソースコードジェネレータで
|
6
|
-
モデルクラスを生成しコンパイルする形式を採ります。
|
7
|
-
これを使うとC++で簡単に高速なO/Rマッピングを行うことができます。
|
8
|
-
|
9
|
-
|
10
|
-
|
11
|
-
はじめに
|
12
|
-
-------------------------------------------------------------------------------
|
13
|
-
ジェネレータの関連ファイルは source/global/ormsrcgen/templateに格納されています。
|
14
|
-
それぞれのファイルの役割を説明します。
|
15
|
-
|
16
|
-
* ormDataClass_template.cpp : C++ モデルクラスのテンプレート
|
17
|
-
* ormDataClass_template.h : C++ モデルクラスのテンプレート
|
18
|
-
* ormMapClass_template.cpp : C++ マップクラスのテンプレート
|
19
|
-
* ormMapClass_template.h : C++ マップクラスのテンプレート
|
20
|
-
* template.cnf : 設定ファイルのひな形
|
21
|
-
* fieldNameList_sample.txt : フィールド名変換ファイルのサンプル
|
22
|
-
|
23
|
-
このうち、template.cnfとfieldNameList_sample.txtを必要に応じて編集します。
|
24
|
-
|
25
|
-
|
26
|
-
|
27
|
-
コマンドラインオプション
|
28
|
-
-------------------------------------------------------------------------------
|
29
|
-
コマンドラインオプションは以下の通りです。
|
30
|
-
|
31
|
-
```
|
32
|
-
command line options:
|
33
|
-
-d [ --database_uri ] database uri ex:tdap://hostname/dbname?dbfile=trnasctd_schema
|
34
|
-
-t [ --table_name ] table name
|
35
|
-
-c [ --class_name ] class name
|
36
|
-
-f [ --conf_name ] configuration filename
|
37
|
-
|
38
|
-
-d :データベースを指定します。
|
39
|
-
-t :生成するモデルのテーブルを指定します。生成はテーブルごとに行います。
|
40
|
-
-c :-tで指定したテーブルに対応するモデルのクラス名を指定します。
|
41
|
-
-f :その他の設定項目を記述したテキストファイル(configuration file)です。
|
42
|
-
```
|
43
|
-
|
44
|
-
configuration fileは、多くの場合、テーブルが異なっても共通の内容です。ひな形が
|
45
|
-
`source/global/ormsrcgen/template/template.cnf`として用意されています。
|
46
|
-
これをコピーして内容を編集します。
|
47
|
-
|
48
|
-
|
49
|
-
|
50
|
-
configuration fileの書式
|
51
|
-
-------------------------------------------------------------------------------
|
52
|
-
* `lang = (language)`
|
53
|
-
|
54
|
-
生成するコードの言語を指定します。現在のバージョンでは`C++`のみサポートされます。
|
55
|
-
|
56
|
-
* `files = (number of file)`
|
57
|
-
|
58
|
-
1つのモデルのために必要なテンプレートファイルの数を指定します。C++の場合は`2`です。
|
59
|
-
|
60
|
-
* `file1 = (file path) file2 = (file path) ... fileN = (file path)`
|
61
|
-
|
62
|
-
`files =`で指定した数のテンプレートファイルのパスを指定します。
|
63
|
-
デフォルトでは`file1 = ormDataClass_template` `file2 = ormMapClass_template`
|
64
|
-
となっていますが、実際に使用する際は絶対パスで指定してください。
|
65
|
-
|
66
|
-
* `saveDir = (output dir)`
|
67
|
-
|
68
|
-
生成したソースコードを保存するフォルダを指定します。
|
69
|
-
|
70
|
-
* `setPrefix = (setter prefix)`
|
71
|
-
|
72
|
-
クラスのメンバ変数に値をセットするアクセスメソッド名のプレフィックスを指定します。
|
73
|
-
例えば、`setPrefix = set`とした場合、`name`というフィールドの値をセットする
|
74
|
-
メンバ関数は以下のようになります。
|
75
|
-
|
76
|
-
```
|
77
|
-
setName(const char* v)
|
78
|
-
```
|
79
|
-
|
80
|
-
* `getPrefix = (getter prefix)`
|
81
|
-
|
82
|
-
setPrefixと同様に値の取得メソッドにつけられるプレフィックスを指定します。
|
83
|
-
|
84
|
-
* `externWord = (extern keyword)`
|
85
|
-
|
86
|
-
出力されたクラスをDLLやSOなどのライブラリに含めて共有する場合は、class 宣言の後ろに
|
87
|
-
エクスポートのためのキーワードを付加できます。
|
88
|
-
|
89
|
-
```
|
90
|
-
class $externWord someModel
|
91
|
-
{
|
92
|
-
...
|
93
|
-
};
|
94
|
-
```
|
95
|
-
|
96
|
-
* `fieldRenameList = (alias list file)`
|
97
|
-
|
98
|
-
通常はテーブルに含まれるフィールド名がそのままクラスのメンバ変数名になります。
|
99
|
-
異なる名前に変更したい場合は、このfieldRenameListで変換リストの書かれたテキスト
|
100
|
-
ファイルを指定できます。変換リストは以下のように、変換前=変換後の形式で指定します。
|
101
|
-
|
102
|
-
```
|
103
|
-
customer_id=id
|
104
|
-
customer_name=name
|
105
|
-
```
|
106
|
-
|
107
|
-
* `name_space = (namespace of model class)`
|
108
|
-
|
109
|
-
モデルクラスの名前空間を指定します。
|
110
|
-
|
111
|
-
* `name_space_map = (namespace of map class)`
|
112
|
-
|
113
|
-
C++の場合、モデルクラスとともに、テーブルとクラスの復元と保存をマッピングする
|
114
|
-
mapクラスも同時に生成されます。
|
115
|
-
name_space_mapはそのマップクラスの名前空間を指定します。
|