[mew-dist 28518] Re: D な smew

trueroad at example.com trueroad at example.com
2008年 6月 26日 (木) 15:03:51 JST


山本様
細田です。

> どうやってリンクしましたか?

linux では恐らくあまりお役には立てないような気がしますが、
Windows をお使いの皆様には参考になるかもしれないので、
以下に smew.exe を make した手順を書いておきます。

1. sqlite3 入手

http://www.sqlite.org/
から
sqlitedll-3_5_9.zip
をダウンロード。

2. dmd 入手

http://www.digitalmars.com/
から
dmd.2.014.zip
dmc.zip
bup.zip(D ではなくて C++ の方から入手できます。
いろいろ入っていますが、本手順で必要なのは implib.exe だけです。)
を入手して適当にインストール。

私は各 zip ファイルを中身のフォルダ構造のまま
c:\dmd と c:\dm へ解凍して、
c:\dm\bin と c:\dmd\bin を path に加えました。

3. sqlite3.def を作る

sqlitedll-3_5_9.zip にも sqlite3.def が同梱されていますが、
これだとうまく使えないので、適当に以下のような
sqlite3.def を作ります。

----------------------------ここから----------------------------
LIBRARY sqlite3

EXPORTS
_sqlite3_finalize=sqlite3_finalize
_sqlite3_errmsg=sqlite3_errmsg
_sqlite3_column_count=sqlite3_column_count
_sqlite3_column_text=sqlite3_column_text
_sqlite3_column_name=sqlite3_column_name
_sqlite3_step=sqlite3_step
_sqlite3_prepare=sqlite3_prepare
_sqlite3_open=sqlite3_open
_sqlite3_close=sqlite3_close
----------------------------ここまで----------------------------

4. sqlite3.lib を作る

上記で作った sqlite3.def のあるフォルダで
> implib sqlite3.lib sqlite3.def
とするとできます。

5. smew.exe を作る

D な smew のソース一式と sqlite3.lib のあるフォルダで
> dmd smew.d SearchEngine.d Sqlite3DB.d sqlite3.lib
とするとできます。

6. インストール

上記でできた smew.exe と sqlitedll-3_5_9.zip 同梱の sqlite3.dll を、
C:\Meadow\bin などに放り込んで、ruby 版の smew を消します。
cmew は ruby 版をそのまま使います。

私は cygwin の ruby に sqlite3 を入れて cmew を使っているので、
smew は Windows native で cmew は cygwin という変な環境に
なってしまってますが、とりあえず快適に使えております。

 細田 真道 <trueroad at example.com>




Mew-dist メーリングリストの案内