AZ-Prolog ユーザーズマニュアル

## 2.インストールと環境設定

この章では、AZ-Prologのインストールと環境設定について、Windows版(2-1)とLinux版(2-2)、Mac版（2-3）の順に解説しています。
本マニュアルでは、OSによらずAZ-Prologがインストールされたディレクトリを ${AZProlog} と表記します。

### 2-1.Windows

##### 2-1-1.インストール

Windows版のインストールの手順を説明します。
旧版のAZ-Prologがインストールされている場合、コントロールパネル→「プログラムと機能」で旧版用のプログラムを削除しておいてください。手作業で旧版用の環境変数を設定されている場合はこれを削除しておいてください。

- Windows7等のAZ-PrologがサポートしているOSを起動します。
  AZ-Prolog32ビット版は32ビットOSに、64ビット版は64ビットOSにインストールします。
- OSに合わせた、64ビット、または32ビット用インストールファイルをホームページからダウンロードし、実行すると、インストールが開始されます。またインストールメディア（DVD-ROM）からインストールする場合は、ドライブに挿入すれば自動でインストールが開始します。
- 自動でインストールが始まらない場合は、エクスプローラからDVD-ROMのazprolog.msiを開きます。
- インストール・プログラムが起動されると、インストール先の指定等の指示が表示されますので、その指示に従ってください。
  インストールが終了すると、プログラムマネージャーにAZ-Prolog用のグループが追加され、AZ-Prologパッケージのプログラム等がスタートメニューに登録されます。

インストール後、インストールされたディレクトリの「relnote.txt」ファイルを確認してください。このファイルには、マニュアルには書かれていない追加事項などが記載されています。

##### 2-1-2.環境設定

インストール時に、インストール先フォルダを変更しなかった場合は、以下のようにディレクトリが構成され、各ファイルが格納されます。また、構成されたディレクトリに環境変数が設定されます。

###### 構成されたディレクトリ及びファイル

C:¥Program Files |
├ ¥AZ-Prolog.8xx |
├ ¥Bench | ベンチマークプログラム一式
├ ¥bin |
├ prolog.exe | ウインドウ版インタプリタ
├ prolog_c.exe | コンソール版インタプリタ（並列処理子側プロセスと共用）
├ prologcgi.exe | CGI用インタプリタ
├ azpc.exe | Prologコンパイラ
├ azserv.exe | OLEオートメーションサーバーPrologインタプリタ
├ ¥doc |
├ ¥include |
├ ¥lib |
├ ¥ext | 拡張機能動的リンクライブラリ
├ ¥obj |
├ ¥sample |
├ ¥system |

※AZ-Prologのディレクトリ名はバージョンごとに変わります。インストールされたバージョンでの構成については、インストールディレクトリ直下のrelnote.txtを参照してください

環境変数は、次のように設定されます。

【構成されたディレクトリ　】 | 【設定される環境変数】
--- | ---
C:¥Program Files¥AZ-Prolog.8xx¥bin | このDIRがシステム環境変数Pathに追加される
C:¥Program Files¥AZ-Prolog.8xx¥lib | このDIRがシステム環境変数Libに追加される
C:¥Program Files¥AZ-Prolog.8xx¥include | このDIRがシステム環境変数Includeに追加される
C:¥Program Files¥AZ-Prolog.8xx | このDIRがシステム環境変数AZPrologに設定される

- Path OSがコマンド検索を行うときに参照するシステム環境変数で、AZ-PrologインタプリタやAZ-Prologコンパイラが存在するディレクトリもこれに定義しておかなければなりません。詳しくは各OSのマニュアルを参照してください。
- Lib AZ-Prologコンパイラが使用する動的ライブラリ・ファイル「azp.lib」が存在するディレクトリを指定します。
  このシステム環境変数は、リンカがライブラリを検索する時に参照します。詳しくはCコンパイラのマニュアルを参照してください。
- lnclude AZ-Prologコンパイラが使用するヘッダファイル「azprolog.h」が存在するディレクトリを指定します。
  このユーザー環境変数は、Cコンパイラのプリプロセッサーがインクルードファイルを検索する時に参照します。詳しくはCコンパイラのマニュアルを参照してください。
- AZProlog

  ¥doc | このディレクトリ直下にエラーメッセージファイル「errmsg.pdf」、マニュアルHTMLファイルの存在するディレクトリ「doc」があります。この環境変数が指定されていない場合は、実行ファイルと同じディレクトリにこれらのファイルが存在するものとみなします。
  ¥obj | このディレクトリ直下にAZ-Prologコンパイラのオプションスイッチ（「/i」「/no」「/curses」）を使用する時にユーザプログラムと一緒にリンクされるオブジェクトファイルディレクトリ「obj」があります。 この環境変数がない場合にはコンパイラはカレントディレクトリにあるものとみなして処理を行ないます。
  ¥system | このディレクトリ直下にAZ-Prologの拡張機能を提供するソースファイルがあります。
  ¥sample | このディレクトリにサンプルプログラムが格納されています。
  ¥bench | ベンチマークプログラムが格納されています。 インタプリタのベンチマークを計測する場合や再コンパイルする場合はプログラムをダウンロードしてください。ダウンロード先などの詳細はReadMe.txtに書かれています。

  環境変数の確認及び編集は、Windowsスタートメニュー =>システムとセキュリティ=>システム=>設定の変更=>詳細設定=>環境変数 にてできます。

### 2-2.Linux

##### 2-2-1.インストール

ここではLinux版のインストールの手順を説明します。

- Ubuntu 12.04 を起動します。
- OSに合わせた、64ビット、または32ビット用tarファイルをホームページからダウンロードまたはDVDからコピーします。
- ファイルを解凍します。
  ダウンロード時に「プログラムで開く」を選んでOKすると、アーカイブマネージャが開きます。表示されたフォルダを選択して「展開」すると、指定したディレクトリに解凍されます。 それ以外の場合は、同様にアーカイブマネージャで展開までを行うか、以下のコマンドを実行してtarファイルを解凍してください。ダウンロード時に「ファイルを保存する」を選択した場合は、tarファイルはダウンロードフォルダに置かれます。解凍すべき場所に移動、もしくはコピーした上で行ってください。
  ＄tar xzf azprolog8.xx-ubuntu12.04x64.tgz
- 解凍されたディレクトリに移動します。
- インストールします。デフォルトでは、/usr/localにインストールされます。
  他の場所にインストールするには、解凍ディレクトリのMakefileの下記の部分を書き換えてください。
  ＜例＞/home/az へインストールする場合
  PREFIX = /home/az
  ESCAPED_PREFIX = /home /az
  基本機能のみか、フル機能をインストールするかに応じて、以下のいずれかを実行してください。
  ・基本機能のみのインストールの場合
  ＄sudo make install
  ・フル機能（Redis、Websocket）をインストールする場合
  ＄sudo make install_full

##### 2-2-2.環境設定

・標準インストールの場合
「2-2-1.インストール」でデフォルトの場所にインストールした場合は、以下のディレクトリ構成で各ファイルが格納されます。この時には環境変数の設定は不要です。
ただし、本マニュアルの記述では説明の都合上、環境変数AZPrologが設定されているものとして説明している箇所があります。その場合は /usr/localに置き換えて考えてください。
＜例＞

マニュアルの記述： | "-L ${AZProlog}/lib/azprolog/ext -l_socket"
実際の意味： | "-L /usr/local/lib/azprolog/ext -l_socket"

・任意の場所にインストールした場合
この場合は、ご利用に先立ち、環境変数 AZPrologにインストール先を設定する他、必要な環境変数を以下の例に倣って設定してください。

＜例＞/home/az へインストールした場合の環境設定
export AZProlog=/home/az
export LD_LIBRARY_PATH=${AZProlog}/lib:${LD_LIBRARY_PATH}
export PATH=${AZProlog}/bin:${PATH}

.bashrc に書き加えておくと毎回の手間が省けますが、複数の異なるバージョンのAZ-Prologをインストールした場合は、バージョン毎にシェルスクリプトを書いて、その中で環境変数をそれぞれに変えて設定して切り替えることもできます。

Linux版では、インストール後のディレクトリは以下のように構成されます。任意の場所にインストールした場合は、 /usr/local の部分をインストール先に読み替えてください。

ベンチマークプログラムのコンパイル、拡張機能の再コンパイルなどの作業を行う場合は、必要に応じて作業ディレクトリにコピーしておこなってください。

###### 構成されたディレクトリ及びファイル

/ |
├ /usr |
├ /local |
├ /bin |
├ prolog | ウインドウ版インタプリタ（画面制御述語可、プロンプト"?-"あり）
├ prolog_c | コンソール版インタプリタ（並列処理子側プロセスと共用） 画面制御不可。質問するときは、"?-"を入力する。
├ prologcgi | CGI用インタプリタ
├ azpc | Prologコンパイラ
├ /include |
├ /lib |
├ /azprolog |
├ /ext | 拡張機能動的リンクライブラリ
├ /obj | コンパイラによりリンクされるオブジェクトファイル
├ /share |
├ /doc |
├ /azprolog | マニュアル
├ /azprolog |
├ /bench | ベンチマークプログラム
├ /sample | サンプルプログラム
├ /system | 拡張機能を提供するソースファイル

### 2-3.Mac

##### 2-3-1.インストール

ここではMac版の環境設定及びインストール手順を説明します。

- Mac OS を起動します。
- ホームページより最新版（AZ-Prolog ver8 for MAC）をダウンロードまたはDVDからコピーします。
  ダウンロードファイルの形式は、仮想ディスクイメージ(*.dmg)です。
- ダウンロードした仮想ディスクイメージファイルを展開します。
  仮想ディスクイメージファイルをダブルクリックすると、仮想ディスクイメージファイルが展開(マウント)されてフォルダが開かれます。
- 環境設定シェルファイルを選択します。
  環境設定シェルファイル(prolog_setenv.sh)を右クリック(control+クリック)し、「情報を見る」を選択するとシェルファイルの情報ウィンドウが表示されるので「このアプリケーションで開く：」の選択で「ターミナル」を選択します。
- 環境設定シェルファイルを実行します。
  prolog_setenv.shをダブルクリックし、シェルを実行します。
  シェルを実行すると「ターミナル」が表示されます。
  ※シェルの実行は１回のみ行います。(複数回実行しても影響はありません)
- ターミナルを閉じます。
  上部メニューの「ターミナル」を選択し、「ターミナルを終了」を選択します。
- AZ-Prologアプリケーションの登録を行います。
  仮想ディスクイメージファイルが展開されてフォルダを開き、azprologアプリケーション(アイコンが表示されているazprolog)を選択し、表示されているApplicationsフォルダへコピーします。
  (azprologをマウスで選択し、クリックした状態でApplicationsフォルダへマウスを移動させドラッグする)

##### 2-3-2.環境設定

ターミナル上でazprologのアプリケーションをコマンド・インタプリタとして起動する場合は環境設定を手動で行う必要があります。

※なお、上記「2-3-1.インストール」でprolog_setenv.shを起動するとユーザ環境設定ファイル(~/.profileや~/.bash_profile)に必要な環境設定を自動で行います。

[環境設定]
$ export AZProlog=/Applications/azprolog.app/Contents/az_home
$ export DYLD_LIBRARY_PATH=/Applications/azprolog.app/Contents/az_home/lib
$ export PATH=$PATH:/Applications/azprolog.app/Contents/az_home/bin

※上記の環境設定をユーザ環境設定ファイル(~/.profileや~/.bash_profile)などに登録しておくと毎回ターミナル起動後に手動で環境設定を行う必要がなく便利です。
azprologアプリケーションのホームディレクトリは、/Applications/azprolog.app/Contents/az_home となります(インストールディレクトリとも呼びます) 。

###### 構成されたディレクトリ及びファイル

/Applications |
├ /azprolog.app |
├ /Contents |
├ Info.plist | プロパティ・リスト
├ /MacOS | シェルスクリプト
├ /Resources | リソース
├ /az_home | azprologホームディレクトリ
├ /bin |
├ prolog | ウインドウ版インタプリタ（画面制御述語可、プロンプト"?-"あり）
├ prolog_c | コンソール版インタプリタ（並列処理子側プロセスと共用） 画面制御不可。質問するときは、"?-"を入力する。
├ prologcgi | CGI用インタプリタ
├ azpc | Prologコンパイラ
├ /include |
├ /lib |
├ /pkgconfig |
├ /azprolog |
├ /ext | 拡張機能動的リンクライブラリ
├ /obj | コンパイラによりリンクされるオブジェクトファイル
├ /share |
├ /doc |
├ /azprolog | マニュアル
├ /azprolog |
├ /bench | ベンチマークプログラム
├ /sample | サンプルプログラム
├ /system | 拡張機能を提供するソースファイル

##### 2-3-3.アプリケーションの起動

AZ-PrologがMacのアプリケーションフォルダ(Finderでは左側の「アプリケーション」を選択)に登録されているのでazprologをクリックします。
azprologがターミナルで起動されることを確認してください。
また、一旦ターミナルを開き、コマンド・インタプリタでazprologアプリケーションを起動することも可能です。
なお、アプリケーション起動でエラー(dyld: Library not loaded: libazp.dylib)が表示された場合は、環境設定に問題があるため上記「2-3-2.環境設定」の項を再度確認してください。
[ターミナル上でのアプリケーション起動例]
$ prolog
$ prolog_c
$ azpc

##### 2-3-4.注意事項

azpcアプリケーションでCソースやprologスクリプトなどをコンパイルし、作成されたバイナリファイルを実行する際は、AZ-Prologの動的ライブラリのパスを設定しておく必要があります。
※ライブラリのパスが設定されていないと「ライブラリが存在しない」などのエラーが出力されます。
AZ-Prologの動的ライブラリのパスは以下となりますので、共有ライブラリパスの環境変数(DYLD_LIBRARY_PATH)などに設定後、目的のプログラムを実行します。

/Applications/azprolog.app/Contents/az_home/lib

また、ベンチマークプログラムをコンパイルし実行する際もライブラリパスの設定が必要となります。

▲