2014-10-28 [長年日記]
_ Yosemite Ruby2.1.4 install error
昨晩Ruby2.1.4が出てたのでruby-build&rbenvでインストールしようとしたらコンパイルエラーになった。
BUILD FAILED (OS X 10.10 using ruby-build 20140926)
...
checking host system type... x86_64-apple-darwin14.0.0
checking target system type... x86_64-apple-darwin14.0.0
checking for gcc-4.2... gcc-4.2
couldn't understand kern.osversion `14.0.0'
checking for gcc... (cached) gcc-4.2
checking whether the C compiler works... no
configure: error: in `/var/folders/cr/7xtxcnzn2ts4b4k2cw4f6gnc0000gn/T/ruby-build.20141028075949.1371/ruby-2.1.4':
configure: error: C compiler cannot create executables
See `config.log' for more details
このバージョンのRubyの問題じゃなくて、Yosemite絡みの問題だろう(Yosemiteで初ビルド)とぐぐったら CC=/usr/bin/gcc ruby-install ruby 2.1.4
でいけるとのこと。インストールできてめでたしめでたし。
ほっと一息ついたら、Ruby界の平和を守る @hsbt さんからこんな助言が飛んできた。
apple-gcc42 が入っているなら uninstall するのが正解です https://twitter.com/hsbt/status/526878366868066304
apple-gcc42とな。
brew list したら確かに入ってたので、brew uninstall apple-gcc42 して、rbenv un/install 2.1.4 したら成功。つまりさっきの CC環境変数は複数のgccのうち、apple-gcc42 でない方(XCode?)を指定してたんだろう。
めでたしめでたし。(しばたさんありがとう!)
追記(2014.10.29):
以下にも遭遇したので一緒にメモしておく。
libv8 gem build error
- $ brew install v8
- $ gem install libv8 -v '3.16.14.3' -- --with-system-v8
ただし、これより先にtherubyracer gem をいれておかないとtherubyracerのビルドでこけることがある。その場合は一度libv8 gem をuninstall してから therubyracer → libv8 の順で入れる。
nokogiri build error libiconv がみつからないとのエラー
- $ brew install libiconv
- $ gem install nokogiri -v '1.6.2.1' -- --with-iconv-dir=/usr/local/Cellar/libiconv/1.14/