あーかいぶすハイディフィニション

ここはもう更新しとらんのじゃ

Capybara-webkit をインストールする際の注意

gitlab いれようとして「まずdevelopment・test・production それぞれ bundle 通す所から!」と思って作業してて、わりとはまってガチ切れしてしまったので備忘録として残しておきます、はい!
ちなみにロケ地は ScientificLinux6.3 ServersMan@VPS

On Linux platforms, capybara-webkit requires an X server to run, although it doesn't create any visible windows. Xvfb works fine for this. You can setup Xvfb yourself and set a DISPLAY variable, or try out the headless gem.

GitHub - thoughtbot/capybara-webkit: A Capybara driver for headless WebKit to test JavaScript web apps

ずっとエラー内容でググってたせいで気付かなかったんだけど、github に上がってるドキュメント見てたらこんな記述あってまじギレしてしまいましたね。Qt ダウンロードしてくっそ長いコンパイルまでしちまったぞゴルァ!
何が原因かって、この「Linux で使うには X server が動いてる事が必要だよ!X server (GUI) を使いたくないなら Xvfb 使えよ!」ってことが、Installing Qt and compiling capybara webkit · thoughtbot/capybara-webkit Wiki · GitHub に書いてないのがやばい。
Bundle install - failed to build gem native extension · Issue #353 · thoughtbot/capybara-webkit · GitHub わりとcapybara-webkit のインストールで躓いたエラーでぐぐるとこのエントリ出てくるんだけど、ここも「インストールのページちゃんと見ろよ HEHE !!」って感じで、確かに GUI 使ってる人が殆どだろうし、手元で動かして動けばそりゃ気づかないよねっていう。

というわけで、

  • 原因

GUI (X server)環境が無い

  • 解決方法

X server のインストールもしくは、 Xvfb のインストール

Xvfb のインストール

GUI 用意しなおすのが簡単だけど、まあ既に動いてる環境で X server 追加せずに解決したい!ってパターンを考慮して今回は Xvfb のインストールを。

[root@localhost ~]# yum install xorg-x11-server-Xvfb

これでおk、CUI 環境でも capybara-webkit が使えるようになります。他にも X のエミュレート?できるのあるらしいけど動いたのでこれでいいや。

蛇足

gitlab 入れたい人は、こんなめんどうな事して入れなくても、

bundle install --without development test

ってすれば production 用 gem だけインストールされるから capybara-webkit 必要無いので解決します。