-
Notifications
You must be signed in to change notification settings - Fork 2
/
BUILD.txt
184 lines (122 loc) · 7.85 KB
/
BUILD.txt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
==============================================================================
Paraphrase ver. 0.97 ビルドマニュアル by 飯倉宏治 2024.2.18
==============================================================================
目次
1. Linux でのビルド
2. MacOS (Intel / M1) でのビルド
3. Windows でのビルド
4. 動作確認
A. 更新履歴
------------------------------------------------------------------------------
1. Linux でのビルド
------------------------------------------------------------------------------
ここでは、Ubuntu 22.04 を対象に Linux でのビルドの説明を行います(他のディス
トリビューションでは同等の操作に適宜読み替えて下さい)。C++ コンパイラ等がイン
ストールされていないようであれば、build-essential パッケージがインストールされ
ているかどうかも調べて下さい。
Paraphrase は readline と boost を利用しています。そのため、これらがインスト
ールされていないのであれば、以下のコマンドを用いてそれぞれをインストールします。
boost のインストール
sudo apt-get install libboost-all-dev
readline のインストール
sudo apt-get install libreadline-dev
git がインストールされていない場合は、git もインストールします。
git のインストール
sudo apt-get install git
必要なものが揃ったら、適当なディレクトリにて git clone してソースコードを取得し
ます。
git clone https://github.com/iigura/Paraphrase.git
Paraphrase というディレクトリが作成され、そのディレクトリ中にある src ディレク
トリにソースコードが格納されていますので、
cd Paraphrase/src
とし、
make linux
を実行します。g++ が無い等のエラーメッセーが表示される場合は
sudo apt-get install build-essential
とし、g++ をインストールして下さい。
icu 関連でリンクエラーが出る場合は
sudo apt-get install pkg-config
とし、pkg-config をインストールしてみて下さい。
無事、make が終了すると Paraphrase ディレクトリの直下に para および libPP.so
というファイルが生成されます。これらファイルが Paraphrase の言語処理系を構成す
るファイルとなります。動作確認は本文書の「4. 動作確認」を参照して下さい。
------------------------------------------------------------------------------
2. MacOS でのビルド
------------------------------------------------------------------------------
Paraphrase は readline と boost を利用しています。そのため、これらがインスト
ールされていないのであれば、以下のコマンドを用いてそれぞれをインストールします。
boost のインストール
brew install boost
readline はもしかすると既にインストールされているかもしれません。エラー等が出る
ようであれば以下のコマンドを用いてインストールしてみて下さい。
readline のインストール(必要であれば)
breww install readline
icu4c のインストール(必要であれば)
brew install icu4c
ffi のインストール
brew install libffi
必要なものが揃ったら、適当なディレクトリにて git clone してソースコードを取得し
ます。
git clone https://github.com/iigura/Paraphrase.git
Paraphrase というディレクトリが作成され、そのディレクトリ中にある src ディレク
トリにソースコードが格納されていますので、
cd Paraphrase/src
とし、
make macos
を実行して下さい。
無事、make が終了すると Paraphrase ディレクトリの直下に para および libPP.so
というファイルが生成されます。これらファイルが Paraphrase の言語処理系を構成す
るファイルとなります。動作確認は本文書の「4. 動作確認」を参照して下さい。
もし icu-config が見つからない等のエラーが出る場合は、
brew info icu4c
とし、表示された PATH 追加方法を参考にして icu-config が実行できるよう、サーチ
パスの設定を行って下さい。
------------------------------------------------------------------------------
3. Windows でのビルド
------------------------------------------------------------------------------
Windows 版のビルドは Visual Studio 2022 にてビルド可能です。git を用いて取得
するため、Windows 版の git を適宜入手&インストールし、適当なディレクトリにて
git clone してソースコードを取得します。
git clone https://github.com/iigura/Paraphrase.git
Paraphrase というディレクトリが作成され、そのディレクトリ中にある src/windows
ディレクトリの中に paraphrase.sln というファイルがあるので、それを Visual
Studio にて開きます。
ソリューションを開くと「プロジェクトの再ターゲット」というダイアログが開く場
合があります。その場合は、Windows SDK のバージョンはできるだけ最新のものを指定
し、プラットフォームツールセットは「v143 へのアップグレード」として OK ボタンを
押して下さい。
次に、各プロジェクトに追加のパッケージを追加します。libPP プロジェクトには、
以下の 4 つのパッケージを NuGet を用いてインストールしておきます。
1) boost (ver. 1.84.0)
2) boost-vc143 (ver. 1.84.0)
3) ICU4C_58_2 (ver. 1.0.0)
4) libgmp_vc120 (ver. 5.1.3.2)
その他プロジェクトに対しても NuGet にてパッケージをインストールしますが、上の
パッケージのうち 1 番目および 4 番目のものをインストールしておけば十分です。
ソリューションの中に paraphrase というプロジェクトがあるので、Release モードを
選択しビルドします。無事ビルドが終了すると、paraphrase ディレクトリの直下に
para.exe および libPP.dll というファイルが生成されます。これらファイルが
Paraphrase の言語処理系を構成するファイルとなります。動作確認は次の「4. 動作確
認」を参照して下さい。
------------------------------------------------------------------------------
4. 動作確認
------------------------------------------------------------------------------
Paraphrase の言語処理系(Paraphrase インタプリタ)は Paraphrase ディレクトリ
にある para (Windows 版は para.exe)にて起動します。無事起動すると、プロンプト
「>」が表示されますので、
2 3 + .
と入力しリターンキーを押下して下さい。
5 ok.
と表示されれば Paraphrase インタプリタは、とりあえず動作していることが確認でき
ます。
次に、並列に動作することを確認します。Ctrl-C を入力し、Paraphrase インタプリ
タを終了させて下さい。samples ディレクトリに移動し、
../para countPrimeMT-short.pp run
として下さい(Windows の場合はスラッシュではなく円マークを記号を用いて ..\para
として下さい)。しばらくすると、
numOfPrimes=664579 (2 ... 9999991)
と表示されます。
これは 1 から 100 万の間にある素数を、並列処理を用いて数えるものです。実行中に
CPU の使用状況などを確認すると、全ての CPU 負荷が上昇していることが確認できる
と思います。
以上で、ビルド&動作確認についての説明は終わりです。