我试图使用ThoughtBot的吊带宝石启动一个个人项目,并在运行bundle install
时遇到了一个与capybara-webkit有关的错误。谷歌发现了一些类似的报道,其中大多数似乎都是通过在capybara-webkit GitHub 这里上安装Qt来解决的(我注意到这些说明是针对OSX 10.9小牛和10.8山狮的,而我使用的是10.10 Yosemite,但我没有看到任何关于10.10的具体内容)。
如果您在构建时得到一个错误,类似于致命错误: QObject:没有这样的文件或目录,您可能会尝试使用Qt3构建,或者使用早期版本的Qt4。确保路径中的qmake链接到Qt4.8。 如果是链接到旧版本的rm
which qmake
#,可以查看它在哪里链接的qmake #
对OSX的说明如下:
转到QT网站(通用下载站点,4.8.6安装程序),下载Mac (185 MB)和调试库(480 MB)的Qt库4.8.6。
所以我下载并安装了链接中的两个Qt库。我从命令行得到以下输出:
Davids-MBP:app david$ which qmake
/usr/bin/qmake
Davids-MBP:app david$ qmake --version
QMake version 2.01a
Using Qt version 4.8.6 in /Library/Frameworks
然而,当我在我的应用程序中运行bundle install
时,我得到了以下输出:
Gem::Ext::BuildError: ERROR: Failed to build gem native extension.
/Users/david/.rbenv/versions/2.2.1/bin/ruby -r ./siteconf20150414-16090-1y906xu.rb extconf.rb
WARNING: Ignored (not found) '/Users/david/.rbenv/versions/2.2.1/lib/ruby/gems/2.2.0/gems/capybara-webkit-1.5.0/src/webkit_server.pbproj'
make: *** No rule to make target `qmake'. Stop.
*** 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=/Users/david/.rbenv/versions/2.2.1/bin/$(RUBY_BASE_NAME)
--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 'make qmake' failed
extconf failed, exit code 1
Gem files will remain installed in /Users/david/.rbenv/versions/2.2.1/lib/ruby/gems/2.2.0/gems/capybara-webkit-1.5.0 for inspection.
Results logged to /Users/david/.rbenv/versions/2.2.1/lib/ruby/gems/2.2.0/extensions/x86_64-darwin-14/2.2.0-static/capybara-webkit-1.5.0/gem_make.out
An error occurred while installing capybara-webkit (1.5.0), and Bundler cannot continue.
Make sure that `gem install capybara-webkit -v '1.5.0'` succeeds before bundling.
我返回并删除了Qt,然后尝试根据链接的文档从源代码构建它。这一过程犯了这样的错误:
Davids-MBP:app david$ brew install qt --build-from-source
==> Downloading https://download.qt.io/official_releases/qt/4.8/4.8.6/qt-everywhere-opensource-src-4.8.6.tar.gz
######################################################################## 100.0%
==> Downloading https://raw.githubusercontent.com/DomT4/scripts/440e3cafde5bf6ec6f50cd28fa5bf89c280f1b53/Homebrew_R
######################################################################## 100.0%
==> Patching
patching file src/gui/dialogs/qcolordialog_mac.mm
patching file src/gui/dialogs/qfiledialog_mac.mm
patching file src/gui/dialogs/qfontdialog_mac.mm
patching file src/gui/kernel/qapplication_mac.mm
patching file src/gui/kernel/qcocoaapplication_mac.mm
patching file src/gui/kernel/qcocoaapplicationdelegate_mac.mm
Hunk #4 succeeded at 295 (offset -13 lines).
Hunk #5 succeeded at 342 (offset -13 lines).
patching file src/gui/kernel/qcocoaapplicationdelegate_mac_p.h
patching file src/gui/kernel/qcocoamenuloader_mac.mm
patching file src/gui/kernel/qcocoasharedwindowmethods_mac_p.h
patching file src/gui/kernel/qeventdispatcher_mac.mm
patching file src/gui/kernel/qt_cocoa_helpers_mac.mm
patching file src/gui/kernel/qwidget_mac.mm
patching file src/gui/styles/qmacstyle_mac.mm
patching file src/gui/util/qsystemtrayicon_mac.mm
patching file src/gui/widgets/qcocoamenu_mac.mm
patching file src/gui/widgets/qmenu_mac.mm
==> ./configure -prefix /usr/local/Cellar/qt/4.8.6 -system-zlib -qt-libtiff -qt-libpng -qt-libjpeg -confirm-license
==> make
1 error generated.
make[2]: *** [.obj/release-shared/qglobal.o] Error 1
make[2]: *** Waiting for unfinished jobs....
make[1]: *** [release] Error 2
make: *** [sub-corelib-make_default-ordered] Error 2
READ THIS: https://git.io/brew-troubleshooting
有人能帮忙吗?
我用的是ruby 2.2.1和rbenv。
发布于 2015-04-23 02:40:44
检查App,看看最近是否更新到命令行工具6.3。如果是这样的话,您需要安装6.3.1,它现在可以在苹果的开发者站点上使用:https://developer.apple.com/downloads/index.action#
另外,还有一个StackOverflow问题帮助我解决了这个问题:debug> after updating OSX Command Line Tools 6.3
https://stackoverflow.com/questions/29640870
复制相似问题