ffi: Installing ffi 1.9.21 with native extensions on Ruby 2.4.2, Ubuntu 17.10 failing.

Error looks like this.

  Installing dotenv 2.2.1
  Installing request_store 1.3.2
  Installing draper 3.0.1
  
  Gem::Ext::BuildError: ERROR: Failed to build gem native extension.
  
      /opt/rubies/ruby-2.2.3/bin/ruby -r ./siteconf20180207-2245-1bjhja4.rb extconf.rb
  checking for ffi.h... no
  checking for ffi.h in /usr/local/include,/usr/include/ffi... no
  checking for shlwapi.h... no
  checking for rb_thread_blocking_region()... no
  checking for rb_thread_call_with_gvl()... yes
  checking for rb_thread_call_without_gvl()... yes
  creating extconf.h
  creating Makefile
  
  make "DESTDIR=" clean
  
  make "DESTDIR="
  Running autoreconf for libffi
  /var/app/ondeck/vendor/bundle/gems/ffi-1.9.21/ext/ffi_c/libffi/autogen.sh: line 2: exec: autoreconf: not found
  make: *** ["/var/app/ondeck/vendor/bundle/gems/ffi-1.9.21/ext/ffi_c/libffi-x86_64-linux"/.libs/libffi_convenience.a] Error 127
  
  make failed, exit code 2
  
  Gem files will remain installed in /var/app/ondeck/vendor/bundle/gems/ffi-1.9.21 for inspection.
  Results logged to /var/app/ondeck/vendor/bundle/extensions/x86_64-linux/2.2.0-static/ffi-1.9.21/gem_make.out
  An error occurred while installing ffi (1.9.21), and Bundler cannot continue.
  Make sure that `gem install ffi -v '1.9.21'` succeeds before bundling. (Executor::NonZeroExitStatus)

About this issue

  • Original URL
  • State: closed
  • Created 6 years ago
  • Reactions: 24
  • Comments: 21 (3 by maintainers)

Commits related to this issue

Most upvoted comments

This is a known issue - see #607 . You can either downgrade to ffi-1.9.18 or install libffi before ffi gem like so:

sudo apt install libffi-dev
gem inst ffi

OK, just pushed ffi-1.9.22, which should solve this issue. Could you please re-try?

@jhsoare I had the same problems in my server AWS with ubuntu 14.04.5 and just run

sudo apt install libffi-dev

And in my gemfile group production add gem 'ffi', '1.9.18', it work for me

FWIW my issue specifically was that this dependency specifically uses Xcode. And I had renamed my active CLI Xcode tool from Xcode to Xcode GM (to differentiate from the other Xcode installation I had). Renaming it back to Xcode made the installation succeed on my end. Hope this helps someone πŸ‘

Encountered the error on Ubuntu 18.04. Solved it with sudo apt-get install -y libxml2-dev

Hi I have specified in my gem file like below gem β€˜ffi’, β€˜1.9.18’ but still it’s trying to download latest one when I execute bundle install how to overcome this problem your help will be greatly appreciated. Installing ffi 1.9.21 with native extensions