私は自分のライブラリ c++ Lavish を swig を使って ruby で動作させることに取り組んできました。問題は、インターフェイス ファイルに含めたクラスの一部しか使用できず、バンドルのコンパイル中または ruby への読み込み中にエラーが発生しないことです。私のswigインターフェースファイルはここで見ることができます.
何が機能し、何が機能しないかの例。
sean$ irb
>> require "lavish"
=> true
>> v1 = Lavish::Vector2.new(1,2)
=> #<Lavish::Vector2:0x1011a25a0>
>> puts v1.x
1.0
=> nil
>> display = Lavish::Display.new
dyld: lazy symbol binding failed: Symbol not found: __ZN6lavish7DisplayC1Ev
Referenced from: /Users/seanc/Desktop/Lavish/samples/ruby/Tutorial 2 - Displaying A Triangle/lavish.bundle
Expected in: flat namespace
dyld: Symbol not found: __ZN6lavish7DisplayC1Ev
Referenced from: /Users/seanc/Desktop/Lavish/samples/ruby/Tutorial 2 - Displaying A Triangle/lavish.bundle
Expected in: flat namespace
Trace/BPT trap
C++ で Display オブジェクトを作成でき、swig インターフェース ファイルにヘッダーを含めたので、どこで何が問題なのかわかりません。
何か案は?