Так что я делаю [этот супер базовый учебник по Rails][1], и я застрял на этой части:

bundle install --without production

Проходит через список зависимостей (?), но, похоже, застревает на чем-то, вызывающем ffi 1.9.10, где выдает следующее сообщение об ошибке:

Using concurrent-ruby 1.0.0
Installing ffi 1.9.10 with native extensions

Gem::Ext::BuildError: ERROR: Failed to build gem native extension.

    /Users/stephensmith/.rvm/rubies/ruby-2.2.3/bin/ruby -r ./siteconf20160101-33768-1kfzc9h.rb extconf.rb
checking for ffi.h... *** extconf.rb failed ***
Could not create Makefile due to some reason, probably lack of necessary
libraries and/or headers.  Check the mkmf.log file for more details.  You may
need configuration options.

Provided configuration options:
    --with-opt-dir
    .
    .
    .
    --without-pkg-config
/Users/stephensmith/.rvm/rubies/ruby-2.2.3/lib/ruby/2.2.0/mkmf.rb:456:in `try_do': The compiler failed to generate an executable file. (RuntimeError)
You have to install development tools first.
    from /Users/stephensmith/.rvm/rubies/ruby-2.2.3/lib/ruby/2.2.0/mkmf.rb:587:in `try_cpp'
    .
    .
    .
    from /Users/stephensmith/.rvm/rubies/ruby-2.2.3/lib/ruby/2.2.0/mkmf.rb:1059:in `have_header'
    from extconf.rb:16:in `
' extconf failed, exit code 1 Gem files will remain installed in /Users/stephensmith/.rvm/gems/ruby-2.2.3@real_estate/gems/ffi-1.9.10 for inspection. Results logged to /Users/stephensmith/.rvm/gems/ruby-2.2.3@real_estate/extensions/x86_64-darwin-14/2.2.0-static/ffi-1.9.10/gem_make.out Using formatador 0.2.5 . . . Using sprockets 3.5.2 An error occurred while installing ffi (1.9.10), and Bundler cannot continue. Make sure that `gem install ffi -v '1.9.10'` succeeds before bundling.

Есть идеи, что происходит и как это исправить? Я уверен, что это что-то простое, но я не могу понять это, чтобы продолжить учебник :-(

Ответы (1)

Учитывая, что ваш домашний каталог /Users/, я предполагаю, что вы работаете на Mac. Вам нужно установить инструменты командной строки Xcode, как описано в этой статье

.

Вы можете сделать это из командной строки, используя xcode-select

2022 WebDevInsider