0

SWIG と mkoctfile を使用して、Quantlib への軽量な Octave バインディングを作成中です。SWIG と Octave のホームページにあるドキュメントに従っています。

SWIGのドキュメントから:

27.2.1 動的モジュールのコンパイル

Octave モジュールは、「.oct」サフィックスを持つ DLL/共有オブジェクトです。通常、oct ファイルの作成は、mkoctfile コマンドを使用して行います (Octave 自体またはシェルから)。例えば、

$ swig -octave -c++ example.i -o example_wrap.cxx $ mkoctfile example_wrap.cxx example.c

ここで、example.c は gcd() 実装を含むファイルです。

これらは私がこれまで持っているファイルです:

  • 私の SWIG インターフェイス ファイル quantlib-octave.i
  • 私の関数の実装 quantlib-octave.cpp
  • SWIG を使用して生成されたグルー ラッパー ファイル: quantlib-octave_wrap.cxx

これは、mkoctfile を呼び出したときの CLI 出力です。

root@yourbox:~/src/quantlib-octave$ mkoctfile quantlib-octave_wrap.cxx quantlib-octave.cpp mkoctfile: 認識されない引数 quantlib-octave_wrap.cxx

入力時に表示されるヘルプ情報mkoctfile -hがあまり役に立ちません。

mkoctfile が不平を言っている理由を誰かが知っていますか?

バージョン情報

SWIG Version 2.0.4
Compiled with g++ [x86_64-unknown-linux-gnu]
Configured options: +pcre

mkoctfile, version 3.6.0

Octave: 3.6.0
4

1 に答える 1

1

生成されたファイルの拡張子を .cxx から .cpp に変更することで、これを機能させることができました。

たぶん、より良い解決策がありますか?

于 2012-08-03T10:38:23.327 に答える