Я работаю над тем, чтобы моя библиотека c ++ Lavish работала с ruby, используя swig. Проблема в том, что могут использоваться только некоторые из классов, которые я включил в файл интерфейса, и я не получаю ошибок при компиляции пакета или загрузке в 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
Я могу создать объект Display в C ++, и я включил заголовок в файл интерфейса Swig, поэтому я не знаю, где искать что-то не так.
Есть идеи?