恥ずかしいけど、失敗を晒すことで忘れないとかそういうの大切だよねとか思って書く。
Vagrantのプラグインにあたるvagrant-hostsupdaterをインストールしようとしたらMacBook Proでうまくいかずに、MacBook Airで何事も問題なかったという事案が発生した。
ちなみに、これ使おうって思ったのは前の記事で紹介したVCCWをはじめてさわったときです。VCCWって何って人は前の記事読んでみてください。
WordPressをVagrant環境にらくらくインストールする。 - VCCW
結論
結論から先に述べておくと。
Vagrantのバージョンがダメだった。
現在はGUIでいちいちサイトに行ってダウンロードするのが面倒だと感じたので、brew-caskで落としてます。
何に困ったのか。
恥ずかしながら明かすと、原因がVagrantのバージョンだと気付くのに半日くらいかかった。
なぜこんなに困ったのかの経験をシェアするんだけど、失敗体験に興味ない人は読まなくてよい文章です(笑)
エラー表示から「原因はnokogiriがインストールされてないからだ」って言われた。
なんと画像を撮り忘れているので、正確な文章は書けない。しかし、原因はnokogiriあるいはbundlerにあると言われた。bundlerやnokogiriといえばgemでインストールするソフトウェアである。悲しいことに本当にMBPの方にはインストールされていなかった……。
おかげさまで、原因はbundlerかnokogiriにあると思った。あるいはそうではないにしろ、gemやRuby、あるいはRubyのパッケージ管理ソフトrbenvにあるのではないだろうかという間違った仮説を立ててしまった。非常にツラい。
nokogiriインストールに困ったちゃん
gem install nokogiri
でうまくいかない。
困る。非常に困る。ぐぐってもなかなか解決策が見つからない。
最終的に見つけた解決策が『怒涛のパス指定しまくりインストール』
gem install nokogiri -- --use-system-libraries --with-iconv-dir="$(brew --prefix libiconv)" --with-xml2-config="$(brew --prefix libxml2)/bin/xml2-config" --with-xslt-config="$(brew --prefix libxslt)/bin/xslt-config"
なりふり構わずにやった。Googleには本当に私が求める最適解を提供してほしいと思うじょうほうじゃくしゃのゆとりっぷりである。
bundlerのインストールに何も困らなかったマン
特につまずいた記憶がない。
gem install bundler
gem list
をたたくとbundlerもnokogiriも両方とも掲載されている。
「きっとこれで問題ないはず。」
結果:だめ
gem update --system
gem update
gem cleanup
とかここらへん叩いてアップデートさせようとしてもダメ。
MBPとMBAの環境差を比べてみた。
Rubyのバージョン (MBP : 2.2.0とMBA : Ruby 2.0.0系のなんかの違い)
Rubyのインストール方法( MBP : rbenvとMBA : OS標準の違い )
もちろん前述したまちがった仮説のせいでVagrantのバージョンなのでは?という発想はもう出てきていないのである。
Rubyのバージョンがダメとかいう仮説
MBPのRubyのバージョンを下げてやってみた。この際だからいっそ2.1.6でできたらよいとも思い、2.0.0に加えて2パターン試した。
こういうときにrbenvで管理するのは便利である。rbenvサイコー。
がダメ。
rbenvクソかよ。(って気分になった。立てた仮説の残りの選択肢ひとつだもん仕方ないよね。)
rbenvがダメとかいうどうしようもない仮説
rbenvにさよならバイバイした。
ダメ
正直、rbenvしかりnodebrewしかりパッケージ管理ツールが原因だなんてことはそうそうないのである。
つまり、rbenvサイコー。
原点回帰
「つーかVagrantのプラグインなんだからVagrantのバージョン確認してみろや」ってなった。
MBP1.6.2とMBA1.6.5の差。
マイナーアップデートでこの差が生まれるかに多少の疑問を抱きながらやってみた。
できた!
バージョン管理とかそういうの気をつけようねとかいうアレな記事でした。