如何在Heroku上安装ffi

今天开始我们的Heroku部署。

Gem::Installer::ExtensionBuildError: ERROR: Failed to build gem native extension. /tmp/build_6e4275c6-8442-4a39-9175-f20505baf383/vendor/ruby-2.0.0/bin/ruby extconf.rb checking for ffi.h... no checking for ffi.h in /usr/local/include,/usr/include/ffi... no checking for rb_thread_blocking_region()... yes checking for rb_thread_call_with_gvl()... yes checking for rb_thread_call_without_gvl()... yes checking for ffi_prep_cif_var()... no creating extconf.h creating Makefile make "DESTDIR=" Configuring libffi make -C "/tmp/build_6e4275c6-8442-4a39-9175-f20505baf383/vendor/bundle/ruby/2.0.0/gems/ffi-1.9.3/ext/ffi_c/libffi-x86_64-linux" make[1]: Entering directory `/tmp/build_6e4275c6-8442-4a39-9175-f20505baf383/vendor/bundle/ruby/2.0.0/gems/ffi-1.9.3/ext/ffi_c/libffi-x86_64-linux' 

最近添加的gem包括ffi:

  gem 'sass', github: 'nex3/sass' gem 'sass-rails' gem "compass", "~> 1.0.0.alpha.18" gem "compass-rails", "~> 1.1.2" gem 'susy', github: 'ericam/susy', branch: 'susy-next' 

有人向Heroku运送ffi以避免这种情况吗?

我按照以下步骤处理同样的问题。 我建议做同样的事情

  1. 将ffi添加到本地gemfile,指定其版本为1.9.0,例如gem’ffi gem 'ffi', '= 1.9.0'
  2. 从本地方框gem uninstall ffi -v 1.9.3
  3. 运行bundle update ffi
  4. 提交更改
  5. 将更改推送到heroku。