使用捆绑器安装 gem 时传递安装标志

Passing install flags when installing gems with bundler

由于 Mavericks 在运行时有时会在选择正确的 C 编译器时遇到一些问题 bundle install 我必须安装一些带有特殊标志的 gem。

其中一个例子是我必须运行:gem install nokogiri -- --use-system-libraries。 这在此处进一步讨论:Error to install Nokogiri on OSX 10.9 Maverick?

所以我的问题是:在安装 nokogiri 时,有没有办法告诉 bundler 使用系统库?或者有没有办法告诉 gem install 它应该安装为 "deployment"-gem.

非常欢迎任何其他关于如何解决此问题或我遇到此问题的建议。

你可以告诉 bundler 在安装 gem 时使用的标志

bundle config build.nokogiri --with-system-libraries

这会将其设置为全局默认值,即此设置存储在 ~/.bundle/config 中。仅为当前项目存储它,运行

bundle config --local build.nokogiri --with-system-libraries

通过

解决

NOKOGIRI_USE_SYSTEM_LIBRARIES=1 bundle install --deployment