HOMEBREWアップデートしたらrmagickでエラー!!!が解決
組んでる内容が最近よく詰まる。
しかも原因が理不尽。
HOMEBREWのアップデートが原因という酷い目に。
railsで画像アップデート用に
carrierwave使う際に
リサイズで
gem 'rmagick'
使ってたんだけど、
まじか、rmagickは
HOMEBREW1.0の新しいimagemagick7に対応してないっつー。
(2017年1月現在)
だから新たにrmagickインストールしてもエラー泣
おかげで組んでたアプリでrails sが立ち上がらない事態に。
解決策を調べると
imagemagick6ならrmagickは対応してるので
imagemagick7から6にしてインストールし直すとよいとのこと。
まずは
rmagickをアンインストールしてやる
$ bundle exec gem uninstall rmagick
$ cd /usr/local/Homebrew/Library/Taps/homebrew/homebrew-core $ git checkout 6f014f2b7f1f9e618fd5c0ae9c93befea671f8be (ImageMagick 6の最後のリビジョン) $ cd - $ export HOMEBREW_NO_AUTO_UPDATE=1 $ brew install imagemagick $ PKG_CONFIG_PATH=/usr/local/lib/pkgconfig bundle install $ unset HOMEBREW_NO_AUTO_UPDATE
imagemagickを6に入れ替えたので
改めてgem 'rmagick'
$ bundle install で
うまくいくかと思ったら
またメッセージ
To install this version, first `brew unlink imagemagick`
つまりまずはリンクを外せということで
$ brew unlink imagemagick
あらためて
$ brew install rmagick
やっと安定した。
という流れを新しいディレクトリでテスト確認し
さて問題の進行中ディレクトリーでためすと
imagemagick6とrmagickがうまく入ったのでrails sするとまたエラー泣
今度は
`full_gem_path': uninitialized constant Bundler::Plugin::API::Source (NameError)
で動かない
これはbundlerを入れ替えることで解決するらしいので
$ bundler -v
でバージョンを確認して
そのバージョンのbundlerを削除してbundle installしなおした
$ gem uninstall bundler -v1.14.3 $ bundle install
するとこんどは、dbを読み込まねー。
homebrewの新しいやつは権限が変わったそうです。
なので
$ sudo chown -R _mysql /usr/local/var/mysql #場所はバージョンによって違う
で権限を変えた。
こんなんで5時間
ついてねー
参考
http://qiita.com/k12u/items/fda29954a4b6d1d4983e
http://qiita.com/ShuntaShirai/items/c582c0acebe2dbf03fc3
http://qiita.com/shogo807/items/f90269818040b2b2781f