Я хотел бы организовать исходный код на C следующим образом:
+ /
|
|___ + ext
| |
| |___ + native_extension
| |
| |___ + lib
| | |
| | |___ (Source files are kept in here - may contain sub-folders)
| |
| |___ native_extension.c
| |___ native_extension.h
| |___ extconf.rb
|
|___ + lib
| |
| |___ (Ruby source code)
|
|___ Rakefile
У меня проблемы с тем, чтобы эта установка корректно работала с mkmf
. Файлы в native_extension/lib
, которые включены в native_extension.c
, полностью игнорируются.
Когда я собираю расширение, компилируется только native_extension.{h,c}
, и я получаю неполный native_extension.{so,dll}
, который дает мне ошибки поиска символов, когда я пытаюсь его запустить.
Есть способ заставить это работать?