Instalacja rubinowego klejnotu kapibara-webkit

8

Podczas próby zainstalowania ruby ​​gem capybara-webkit występują następujące błędy

Gem :: Installer :: ExtensionBuildError: ERROR: Nie udało się zbudować natywnego rozszerzenia gem.

    /home/s/.rvm/rubies/ruby-1.8.7-p371/bin/ruby extconf.rb 
    cd src/ && /usr/lib/x86_64-linux-gnu/qt4/bin/qmake /home/s/.rvm/gems/ruby-1.8.7- 
    p371@/gems/capybara-webkit-0.14.1/src/webkit_server.pro -spec 
   /usr/share/qt4/mkspecs/linux-g++ -o Makefile.webkit_server
   cd src/ && make -f Makefile.webkit_server 
   make[1]: Entering directory `/home/s/.rvm/gems/ruby-1.8.7-p371@/gems/capybara-     webkit-0.14.1/src'

   g++ -c -pipe -O2 -Wall -W -D_REENTRANT -DQT_NO_DEBUG -DQT_WEBKIT_LIB -DQT_GUI_LIB - DQT_NETWORK_LIB -DQT_CORE_LIB -DQT_SHARED -I/usr/share/qt4/mkspecs/linux-g++ -I. - I/usr/include/qt4/QtCore -I/usr/include/qt4/QtNetwork -I/usr/include/qt4/QtGui - I/usr/include/qt4/QtWebKit -I/usr/include/qt4 -I. -o EnableLogging.o EnableLogging.cpp
   g++ -c -pipe -O2 -Wall -W -D_REENTRANT -DQT_NO_DEBUG -DQT_WEBKIT_LIB -DQT_GUI_LIB -  DQT_NETWORK_LIB -DQT_CORE_LIB -DQT_SHARED -I/usr/share/qt4/mkspecs/linux-g++ -I. - I/usr/include/qt4/QtCore -I/usr/include/qt4/QtNetwork -I/usr/include/qt4/QtGui - I/usr/include/qt4/QtWebKit -I/usr/include/qt4 -I. -o Authenticate.o Authenticate.cpp
 In file included from Authenticate.cpp:2:0:
 WebPage.h:46:17: error: incomplete type ‘QNetworkReply’ used in nested name specifier   
 WebPage.h:46:17: error: incomplete type ‘QNetworkReply’ used in nested name specifier
 WebPage.h:46:45: error: template argument 1 is invalid
 make[1]: *** [Authenticate.o] Error 1
 make[1]: Leaving directory `/home/s/.rvm/gems/ruby-1.8.7-p371/gems/capybara-  webkit-0.14.1/src'
 make: *** [sub-src-webkit_server-pro-make_default-ordered] Error 2
 Command 'make' failed

Używam Ubuntu 13.04 i zainstalowałem libqt4-dev i g ++. Czy ktoś wie jak to naprawić? Zainstalowałem go poprawnie na Ubuntu 12.10.

Siergiej Struk
źródło

Odpowiedzi:

3

Wydaje się być popularnym problemem ... https://github.com/thoughtbot/capybara-webkit/issues/513

Miałem ten problem i walczyłem z nim przez około tydzień. Wygląda jednak na to, że teraz działa! Problem polega na tym, że nie mogę zawęzić tego do tego, co zrobiłem. Oto lista rzeczy, które mogą pomóc to naprawić:

Zainstaluj brakujące pakiety:

sudo apt-get install libqt4-dev libqtwebkit-dev build-essential

Jeśli pakiety istnieją, należy je wyczyścić, a następnie zainstalować

sudo apt-get purge libqt4-dev libqtwebkit-dev 

Ponownie zainstaluj ruby

rvm reinstall 1.9.3

sudo apt-get update && sudo apt-get upgrade

Myślę, że ponowna instalacja RVM była dla mnie tym, co zrobiłem. Z czasem zrobiło się zaśmiecone różnymi projektami szyn i osobistymi hackami.

penner
źródło
Wspaniały! Usunięcie Gemfile.lockrozwiązało to dla mnie. Ponowne utworzenie zestawu nie zrobiło nic, podobnie jak ponowna instalacja pakietów Qt.
Jonasz
Istnieje już oficjalna strona wiki dla tego github.com/thoughtbot/capybara-webkit/wiki/…
HarlemSquirrel 29.09.17