Rails
Mac
rbenv
mavericks

Mavericksアップグレードの際 Railsアプリケーションを頑張って起動させるまで

More than 5 years have passed since last update.

MavericksにアップグレードしたがためにRailsアプリケーションがうまく動作しなくなってしまった人に少しでも助けになるといいと思いメモ。

かなり乱雑で理解しきれてない部分もあると思うのでそこはご了承ください。コメントで訂正箇所や補足を言って頂ければすぐに編集します!


rbenv 再インストール


.rbenv 削除
rbenv 再インストール

関係あるのかわかりませんが一応 下記3つ
brew update
gem update
bundle update


command line tools のインストール

Mavericksからcommad line toolsのインストールの方法が変わったらしく下記コマンドを実行してインストールした。


xcode-select --install

http://hiroki.jp/mavericks-command-line-developer-tools

rails app下へ移動

※たまたまそのapplicationに使っていたgemの対処です。

bundle install error ⬇対処


gem capybara-webkit


brew uninstall qt
brew install qt


gem mysql


brew uninstall mysql
brew install mysql


gem rmagick

Mavericksにするとimagemagickの新しいバージョンもインストールされてしまうので削除して元のバージョンを使用するようにするのがポイント


brew uninstall imagemagick
brew install imagemagick
unlink imagemagick && brew link imagemagick


bundle install

Errno::EACCES: Permission denied @ rb_sysopen - /Users/totoman/.rbenv/versions/2.1.0-rc1/lib/ruby/gems/2.1.0/gems/rmagick-2.13.2/build_tarball.rake

>>エラーをみてmkmf.logのファイルの場所探しました。
sudo find / -name mkmf.log

>>rmagick下の権限かえる(ここはちょっとあやふやです)
エラーをみてパーミッションを変えたりしました。
sudo chown -R totoman /Library/

>>imagemagickのパスを指定する
PKG_CONFIG_PATH=/usr/local/Cellar/imagemagick/6.8.7-0/lib/pkgconfig/ gem install rmagick -v '2.13.2'

C_INCLUDE_PATH=/usr/local/Cellar/imagemagick/6.8.7-0/include/ImageMagick gem install rmagick

echo PKG_CONFIG_PATH=/usr/local/Cellar/imagemagick/6.8.7-0/lib/pkgconfig/ >> ~/.bash_profile

echo C_INCLUDE_PATH=/usr/local/Cellar/imagemagick/6.8.7-0/include/ImageMagick >> ~/.bash_profile

source ~/.bash_profile


brew unlink imagemagick
rm -rf 最新
brew versions imagemagick
git checkout 本来の(最新の次に新しいもの)
brew link imagemagick

brew unlinkし忘れてしまうと、(削除した)バージョンがみつからなくて何もできなくなるので


brew upgrade imagemagick

してからまたunlinkからやり直しました。


error
pkg-config: command not found

brew uninstall pkg-config
brew install pkg-config
gem install rmagick

http://without-truth.hatenablog.com/entry/2013/04/11/184202

http://qiita.com/foloinfo/items/470c0632f6f177b03658

http://tech-kazuhisa.hatenablog.com/entry/20130205/1360025012

http://qiita.com/hiroara@github/items/6b1c6c7257042a159cc9

http://qiita.com/ken_c_lo/items/240e0ae7209bbc74a0c0

bundle install 成功!


rails server 立ち上げてみると下記エラー


/Users/totoman/.rbenv/versions/2.1.0-rc1/lib/ruby/gems/2.1.0/gems/rmagick-2.13.2/lib/RMagick.rb:11:in `require': dlopen(/Users/totoman/.rbenv/versions/2.1.0-rc1/lib/ruby/gems/2.1.0/extensions/x86_64-darwin-13/2.1.0-static/rmagick-2.13.2/RMagick2.bundle, 9): Library not loaded: /usr/local/lib/libltdl.7.dylib (LoadError)
Referenced from: /usr/local/lib/libMagickCore-6.Q16.1.dylib

下記コマンドで解決


PKG_CONFIG_PATH=/usr/local/Cellar/imagemagick/6.8.7-0/lib/pkgconfig/ gem install rmagick -v '2.13.2'

gem cleanupとかちょいちょいしました。


gem nokogiri

http://koudaiii.hatenablog.com/entry/2013/10/24/111240


rails server 立ち上げる

下記エラー


Library not loaded: /usr/local/lib/libltdl.7.dylib (LoadError)


brew uninstall libtool
brew install libtool

http://qiita.com/hal_sk/items/dec2b142926af0ef2464

できた!


java(Mavericksにするとjavaなくなってます!!ので一応)

javaとコマンドラインで打ってサイトからダウンロード。そしてインストール。

http://ca2tail.hatenablog.jp/entry/2014/01/05/164535

http://qiita.com/hal_sk/items/dec2b142926af0ef2464

brew doctorで Homebrewが正常か確認


ターミナル立ち上げ時の-bash: rbenv: command not foundの対処

エラーでmultipleでたら

/usr/local/Cellar下で二つバージョンあるのがわかるので最新の方を?消す

ようはbrew linkし直す


brew list | xargs brew unlink
brew list | xargs brew link

worningでてもその通りやったれ

brew link openssl --forceみたいな

brew link readline --force

http://satorumpen.blogspot.jp/2014/03/os-x-mavericks-brew.html

そしたら消えた!!


分からないこと


  • なぜ brew uninstall して brew install したらうまくいくのか。

  • なぜ パーミッションが変わったのか。

  • rbenv の再インストールの際、.rbenvを削除したが、前に入っていたruby達はアンインストールされたのか。