web-dev-qa-db-fra.com

Impossible d'installer capybara-webkit à l'aide de la commande bundle install dans Rails 4

Le message d'erreur suivant s'affiche lors de l'exécution de la commande bundle install dans mon application Rails 4.

> Ruby -v
Ruby 2.1.8p440 (2015-12-16 revision 53160) [i386-mingw32]

> Rails --version
Could not find gem 'capybara-webkit x86-mingw32' in any of the gem sources listed in your Gemfile or available on this machine.
Run `bundle install` to install missing gems.

Mon Gemfile

...
.....
group :development, :localtesting, :test do
  gem 'sqlite3',     '1.3.11'
  gem 'byebug',      '3.4.0'
  #gem 'web-console', '2.0.0.beta3'
  gem 'spring',      '1.1.3'
  gem 'i18n-tasks'
  gem 'capybara'
  gem 'Selenium-webdriver'
  gem 'rspec'
  gem 'rspec-Rails'
  gem 'rspec_junit_formatter'
  gem 'capybara-webkit'
end
.....
...

Erreur

Installing capybara-webkit 1.10.1 with native extensions

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

    C:/RailsInstaller/Ruby2.1.0/bin/Ruby.exe extconf.rb
*** 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-opt-dir
        --with-opt-include
        --without-opt-include=${opt-dir}/include
        --with-opt-lib
        --without-opt-lib=${opt-dir}/lib
        --with-make-prog
        --without-make-prog
        --srcdir=.
        --curdir
        --Ruby=C:/RailsInstaller/Ruby2.1.0/bin/Ruby
        --with-gl-dir
        --without-gl-dir
        --with-gl-include
        --without-gl-include=${gl-dir}/include
        --with-gl-lib
        --without-gl-lib=${gl-dir}/lib
        --with-zlib-dir
        --without-zlib-dir
        --with-zlib-include
        --without-zlib-include=${zlib-dir}/include
        --with-zlib-lib
        --without-zlib-lib=${zlib-dir}/lib
Command 'qmake ' not available

extconf failed, exit code 1

Gem files will remain installed in C:/RailsInstaller/Ruby2.1.0/lib/Ruby/gems/2.1.0/gems/capybara-webkit-1.10.1 for inspection.
Results logged to C:/RailsInstaller/Ruby2.1.0/lib/Ruby/gems/2.1.0/extensions/x86-mingw32/2.1.0/capybara-webkit-1.10.1/gem_make.out
Using guard-minitest 2.3.1
Using actionview 4.2.2
Using composite_primary_keys 8.1.2
Using friendly_id 5.1.0
Using paper_trail 4.0.2
An error occurred while installing capybara-webkit (1.10.1), and Bundler cannot
continue.
Make sure that `gem install capybara-webkit -v '1.10.1'` succeeds before
bundling.

Remarque: j'ai déjà essayé de rechercher une publication présentant un problème similaire Impossible d'installer capybara-webkit gem et j'ai essayé de suivre la solution en exécutant la commande suivante. Mais j'ai eu l'erreur suivante.

> qmake -v
'qmake' is not recognized as an internal or external command,
operable program or batch file.
11
user2325154

Les instructions d'installation se trouvent dans le wiki capybara-webkit - https://github.com/thoughtbot/capybara-webkit/wiki/Installing-Qt-and-compiling-capybara-webkit . Vous souhaiterez installer Qt 5.5.1 (la version 5.6 n’est prise en charge que si vous construisez le module QtWebKit séparément).

10
Thomas Walpole

Ubuntu 

Sudo apt-get update
Sudo apt-get install qt5-default libqt5webkit5-dev gstreamer1.0-plugins-base gstreamer1.0-tools gstreamer1.0-x
5
Syed Shibli

'qmake' is not recognized signifie probablement que Qt n'est pas installé

brew update
cd $( brew --prefix )/Homebrew/Library/Taps/homebrew/homebrew-core
git checkout 9ba3d6ef8891e5c15dbdc9333f857b13711d4e97 Formula/[email protected]
brew install [email protected]
echo 'export PATH="$(brew --prefix [email protected])/bin:$PATH"' >> ~/.bashrc

Le processus d'installation complet est ici

1
Chimed Palden

J'ai le système OS X El Capitan . J'ai suivi sur ce lien:

https://github.com/thoughtbot/capybara-webkit/wiki/Installing-Qt-and-compiling-capybara-webkit

puis

gem install capybara-webkit -- --with-opt-include=/usr/local/bin/qmake

Ce problème a été résolu.

0
murat