LEAP Motion を D で使いたいので、
C ライブラリがなく、C++ ライブラリしかありません。
コマンドの下でSWIG 2.0.9を試しました。
swig -c++ -d -d2 leap.i
このコマンドは、Leap.d、Leap_im.d、Leap_wrap.cxx、Leap_wrap.h を出力します。
しかし、D でラッパーを使用する方法がわからず、ラッパーの使用方法が見つかりません。
リンクエラーが表示されますので、そのままご使用ください。
これらのラッパーを D2 でどのように使用しますか?
また、Leap.cpp (Leap.dll のソース) なしで使用できますか?
アップデート:
2つの回答ありがとうございます。そして忙しくて返事が遅くなってすみません。
以下の手順に従って、Win64 で Leap サンプル コードをビルドできたという最初の結論を述べます。
- 上記のコマンドでラッパーを出力します。
- Leap_wrap.cxx、Leap_wrap.h から VC2010 で x64 DLL を作成し、Leap.lib(x64) をインポートします。
- Leap.d と Leap_im.d を dmd -c でコンパイルします。
- Leap.obj と Leap_im.obj を使用して LeapTest.d をビルドします。
すべてのコマンドは以下のとおりです。
swig -c++ -d -d2 leap.i
dmd -c Leap.d Leap_im.d -m64
dmd LeapTest.d Leap.obj Leap_im.obj -m64
execute LeapTest.exe (require x64 Leap.dll and Leap_wrap.dll)
Leap プログラムを実行できました。
ただし、プログラムは onFrame イベント コールバックをクラッシュさせます。
x86 で再試行し、原因を調査します。