我希望我有点密集,但是当捆绑器似乎没有构建它们时,我不知道应该如何使用捆绑器开发和测试带有本机扩展的宝石。
我有一个 gem,swig_try1
这只是我如何构建原生扩展的练习。我可以构建 gem 并安装它,我看到了预期的Building native extensions
消息,构建成功,当我转到另一个目录时,我可以要求 gem 并使用本机扩展中定义的方法。
我的问题在于,当我运行时,bundle install
我看到了这一行:
Using swig_try1 (0.0.1) from source at .
但我没有看到该Building native extensions
消息,并且它没有显示在我的目录结构中:
.
├── Gemfile
├── Gemfile.lock
├── LICENSE.txt
├── README.md
├── Rakefile
├── ext
│ └── swig_try1
│ ├── extconf.rb
│ └── swig.c
├── lib
│ ├── swig_try1
│ │ └── version.rb
│ └── swig_try1.rb
├── pkg
│ └── swig_try1-0.0.1.gem
└── swig_try1.gemspec
即,没有Makefile
生成ext/swig_try1
,以及没有swig_try1.bundle
(在我的 rvm gems 目录中,我看到了这些文件)。
我可以开展我的业务,并且只使用其他目录中的 gem……但是测试呢?我习惯于使用我的 gem 目录中的 rspec,但它总是从那里尝试加载.
没有构建本机扩展的版本。
github上的这个问题表明捆绑器可能无法处理这个问题?这怎么可能?
请帮我看看我错过了什么。