AZ-Prolog Version 6は、この度、本格的な64ビット・マルチコアCPUに対応したバージョンを提供します。


SmartFAQ is developed by The SmartFactory (http://www.smartfactory.ca), a division of InBox Solutions (http://www.inboxsolutions.net)
FAQ(よくある質問) 

カテゴリ FAQ 最新 FAQ
 AZ-Prolog全般
9 AZ-env.batをデスクトップにコピーする際の注意点について
 エラー
2 オートメーションサーバーをコンパイルするとリンクエラーになる。

(1) 2 3 »
AZ-Prolog ver.7をinstallしたフォルダの直下には
環境変数を設定したコマンドプロンプトを立ち上げる
AZ-env.batというバッチファイルがあります。
これをディスクトップなどにコピーしたい場合には、

マウス右クリック→送る→デスクトップ(ショートカットを作成)

で作成してください。

単にコピーするだけだと相対パスの関係から正常に動作
しません。


AZ-Prolog ver.7を例えば、Windows7の
C:\Program Files\AZ-Prolog.708としてインストールした場合、
そのフォルダ以下でコンパイルをするとエラーになる場合があ
ります。

具体的には、 AZ-Prolog.708\sample\parallel\make_pen.batを
実行すると、

COMPILER INTERNAL ERROR

C:\Program Files\AZ-Prolog.708\sample\paralell>del *.c & del *.obj & del mkaz.bat*.c

が見つかりませんでした。
...

というエラーになります。

これは、C:\Program Filesへのファイルの書き込みが許可されて
いないために起こるエラーの可能性が高いですので、書き込みが
できるフォルダに、コンパイルしたいファイルをコピーする
などして対処してください。


1) OfficeとともにリリースされているWindows7x64にはAccessx64のODBCが含まれています。
コントロールパネル->管理ツール->データソース(ODBC)->ドライバを開き、Microsoft Access Driver(*.mdb,*.accdb)があることを確認してください。

2) Accessドライバがない場合、次のURLから AccessDatabaseEngine_X64.exe をダウンロードして実行することでインストールします。

http://www.microsoft.com/downloads/ja-jp/details.aspx?FamilyID=C06B8369-60DD-4B64-A44B-84B371EDE16D&displaylang=ja

3) このドライバを使ってシステムDSNを作成します。
手順はAZ-PrologのHP [Windows版インストールと使い方] 【5:ODBCの設定】の32ビットODBCの設定を64ビットに読み替えてください。

4) AZ-PrologX64のインタプリタを再生成します。

4-1) AZ-Prologインストールディレクトリ\system\pl\odbc_prolog.plの256行目を[管理者権限のエディタ]で開き修正します。

<修正内容>
  該当行中の s_version(_,'Win32',_,_),を削除

<元のファイル>
<256行目> s_version(_,'Win32',_,_),!,A0 is A/256,A1 is A mod 256,

<書き換え後>
<256行目> !,A0 is A/256,A1 is A mod 256,

4-2) AZ-Prologインストールディレクトリ\system\make をディレクトリごと作業場所へコピーします。
4-3) 64ビット C++コンパイル環境コマンドシェルを開き、コピーしたディレクトリに移動します。
4-4) コンパイルバッチ azpc_sample2.bat を実行します。
4-5) 生成された prolog.exe prolog_c.exe prologcgi.exe を AZ-Prologインストールディレクトリ\binへコピーします。

5) ODBCのテストは AZ-PrologのHP [Windows版インストールと使い方] の【5:ODBCの設定】を参照し、prolog32.exe ではなく、
今生成した64ビット版Prologインタプリタ(prolog.exe) を立ち上げて確認してください。


Microsoft のC++ ダウンロードページと内容は時々かわりますので、2013年4月現在のC++ インストールと環境設定方法を記載します。



1)「Windows SDK for Windows 7 and .NET Framework4」をダウンロードし、インストールする。(Ver.は4.5であること)

http://www.microsoft.com/en-us/download/details.aspx?id=8279


2)「Visual Studio Express 2012 for Windows Desktop」をダウンロードし、インストールする。

http://www.microsoft.com/visualstudio/jpn/downloads#d-express-windows-desktop

※この手順でもSDKがインストールできない場合

・「Visual C++ 2010 Redistributable」がインストールされているとNGとなるので先にアンインストールしておく。

・「.NET framework 4.5」がインストールされていないとエラーとなるので、先に「.NET framework 4.5」をインストールしておく。



3)SetEnv.Cmdの一部修正

なぜか、AZ-Prologのインストールなどで設定されたINCLUDEパス、LIBパスがクリアされる記述になっていますので、SetEnv.Cmdの一部を修正します。


C:\Program Files\Microsoft SDKs\Windows\v7.1\Bin\SetEnv.Cmd を[管理者権限のエディタ]で開き372行目と374行目をコメントアウトしセーブする。

注:管理者権限でメモ帳などのエディタを開くには、該当エディタをマウス右クリックでメニューを開き[管理者として実行(A)]を選びます


<元のファイル>

<372行目> SET LIB=

<373行目> SET LIBPATH=

<374行目> SET INCLUDE=


<書き換え後>

<372行目> :: SET LIB= <-- 372行目コメントアウト

<373行目> SET LIBPATH=

<374行目> :: SET INCLUDE= <-- 374行目コメントアウト


4)コンパイル環境コマンドシェルのショートカットをデスクトップにコピーする

[スタートメニュー]->[すべてのプログラム]->[Microsoft Windows SDK v7.1]->[Windows SDK 7.1 Command Prompt]

をマウス右クリックしてメニューを開き、[送る(N)]->[デスクトップ(ショートカットを作成)]を選択する。

5)以降、AZ-Prologコンパイラを利用するときはこのシェルを開いて作業を行います。

Cコンパイラのインストールがされていれば、Prologフルコンパイルにおいては、AZPCコマンドを使うだけで、

C言語を意識することはほとんどありませんので、ぜひインストールしてフルコンパイルをお試しください。





/*
Win版Mecab,Cabochaの提供ライブラリは32ビットアプリのため、2011年現在、AZ-PrologX64にリンクして利用することができませんが、
次のような簡単なプログラムによってMecab,Cabochaを子プロセスとして立ち上げ、利用することができます。
*/

:-kanji_mode(_,off).

:- public launch_put/2.

launch_put(I,[]) :- !,nl(I).
launch_put(I,[A|L]) :-put(I,A),launch_put(I,L).

:- public launch_get/2.

launch_get(O,L):- launch_get2(O,dummy,[_|L]).

launch_get2(O,['EOS'] ,[] ):-!.
launch_get2(O,X, [X|L]):- get0(O,S),m_get(O,S,Q-Q,Y),launch_get2(O,Y,L).

m_get(O,31,Q-[], W):- !,m_to_atom(Q,W-[]). % End Of Line
m_get(O,D, Q-[], W):- (D=32;D=9;D=44),!,m_to_atom(Q,W-L),get0(O,Y),m_get(O,Y,R-R,L). % Delimita
m_get(O,X, Q-[X|R],W):- get0(O,Y),m_get(O,Y,Q-R,W). % Word Proceeding

m_to_atom([],L-L):-!.
m_to_atom(X,[A|L]-L):-name(A,X).

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%% Launcher Test Program ( How To Use ) %%%%

test_mecab:- test(mecab,[]).
test_cabocha1:- test(cabocha,[]).
test_cabocha2:- test(cabocha,['-f1']).

test(Exe,Param):-
    s_child(Exe,Param,I,O,D),
launch_put(I,"私の名前は稲葉です"),
launch_get(O,L),
s_kill(D,9),              
m_write(L).

m_write([]):-!,nl.
m_write([X|L]):- write(X),nl,m_write(L).

/*
<実行例>

| ?-test_mecab.
[私,名詞,代名詞,一般,*,*,*,私,ワタシ,ワタシ]
[の,助詞,連体化,*,*,*,*,の,ノ,ノ]
[名前,名詞,一般,*,*,*,*,名前,ナマエ,ナマエ]
[は,助詞,係助詞,*,*,*,*,は,ハ,ワ]
[稲葉,名詞,固有名詞,人名,姓,*,*,稲葉,イナバ,イナバ]
[です,助動詞,*,*,*,特殊・デス,基本形,です,デス,デス]
*/


(1) 2 3 »
管理者ログインサイト利用条件SOFNEC ホームページ
ソフネック株式会社