この記事を書いた人
machida

明けましておめでとうございます。

OSをLionにアップデートしました。スクロールが逆になって気持ち悪いなぁ、くらいしか今のところ違いは感じないのですが…。

Codekit」というLess、Sass、Stylus、CoffeeScriptをコンパイルしてくれるソフトがあって、それを使ってみたかったのですが、Lionじゃないとそれが使えなかったので、やっとこの正月に重い腰をあげた次第です。

Xcode4.2を入れるとRubyが入らない!

LionにしたついでにMacAppStoreからXcodeをインストール。

Mac App Store/開発ツール

…と、これをインストールすると大変なことになるみたいです(黒い画面に詳しくない僕のようなデザイナーにとっては)。今(2012年1月1日現在)のXcodeの最新版はバージョン4.2なのですが、このXcodeを入れたあとに新たにRubyをインストールをしようとしてもエラーが出てしまいます。今回はこれにはまってみました。

GCCというやつが必要みたい

Rubyがインストールできない、って話は@komagataさんから聞いていて、「インストールするにはGCCが必要」ということも小耳に挟んでました。「インストールするにはGCCが必要」、この一言だけどとても貴重な情報ですね。これを知っていないと検索もしようがない、という…黒い画面の世界は厳しいです。

さてさて、色々ググったところ、今までのXcodeに梱包されてたGCCというものが、Xcode4.2以降には入らなくなって、その代わりにLLVM GCC 4.2がインストールされるようになったらしい、という情報を見つけました。で、そのLLVM GCC 4.2だとRubyが入らないみたいです(今のところ)。だから自分でGCCを入れる必要があるのかな〜、これが@komagataさんが言ってたやつかな?って感じで調査を進めました。

GCCとは?

では、「GCC」とは?について調べてみたいと思います。

GNUプロジェクトによるフリーなコンパイラ。ほとんどのUNIX系OSに移植されている。当初はC言語およびC++言語をサポートしていたため「GNU project C and C++ Compiler」と呼ばれていたが、様々な言語をサポートするようになったため、「GNU Compiler Collection」に名称変更された。

引用元:http://e-words.jp/w/gcc.html

ふむふむ、なるほど。GCCとは「GNU Compiler Collection」の略のようです。GNUプロジェクトという言葉も出てきたので、これもついでに調べておきましょう。そうそう、GNU「グニュー」って呼びます。

GNUとは?

GNUとは、Unixに似た完全なオペーレーティングシステムをフリーソフトウェアとして開発、配付するプロジェクトのことである。リチャード・ストールマンを中心に、1984年に発足した。

GNUの目的を実現するために、フリーソフトウェア開発のための非営利団体であるフリーソフトウェア財団(FSF)を設立し、GNUの主要なスポンサーとなっている。コピーライトをもじったコピーレフト、GNU GPLが有名である。

現在はカーネルにLinuxを採用したGNU/Linuxと呼ばれるシステム(多くの亜流、派生バージョンがある)が世界中の多くのユーザーによって利用されている。

なお、GNUとはGNU is No Unix「GNUはUnixではない」の再帰的頭文字からとられている。

引用元:http://ja.wikipedia.org/wiki/GNU

フリーソフトウェアとして開発、配付するGNUプロジェクトというものがあって、そこが出してるフリーなコンパイラセットがGCCということみたいです。次はコンパイラとは?を調べなくては。

コンパイラとは?

人間がプログラミング言語で記述したソフトウェアの設計図(ソースコード)を、コンピュータが実行できる形式(オブジェクトコード)に変換するソフトウェア。

引用元:http://e-words.jp/w/E382B3E383B3E38391E382A4E383A9.html

だそうです。

音楽に例えると、楽譜があるけど、その曲を聴くには録音して音にしなくてはならない、楽譜がソースコードで、音がオブジェクトコード、みたいなものかな。ソースコードって言葉はよく聞きますが、オブジェクトコードって言葉は全然聞かないですね。

ちなみに、リチャード・ストールマンがGNUを作った生い立ちや、その活動を知るには、@jishihaさんから借りて観たんですが、このDVDがおすすめ!僕の場合、このDVDを観てたおかげでGNUが出してるフリーなコンパイラって言葉だけでピンっと来ました。普段色々観ておくと以外なところで役に立ちますね。

自分のMacで使ってるGCCは何なのかを調べてみる

ちょっと話が脱線しましたが、GCCの話に戻ります。

このコマンド、

gcc --version

を打つと、今自分のMacに入ってるGCCが何なのかが出てきます。

machida — bash — 80×24

i686-apple-darwin11-llvm-gcc-4.2 (GCC) 4.2.1 (Based on Apple Inc. build 5658) (LLVM build 2335.15.00)

GCCではなく、LLVM GCC 4.2.1になってますね。こいつのせいっぽい。

まとめると、

まとめると、

  • Rubyをインストールにはコンパイラが必要である
  • 今までのXcodeにはGCCが入っていた(こちらに一覧を発見)が、Xcode4.2にはGCCではなく、LLVM GCCが入っている
  • LLVM GCCでRVMでRubyをインストールするとエラーが出る
  • なので、GCCを自分で入れればOK
  • さてさて、GCCってどうやって入れるの? ← 今ここ

で、色々調べた末、

この記事の通りにやったらRubyが入りました。@DIGITALSQUADさんありがとうございます!

GCCを自力でインストール

まずはココに行って、

<Dreamweaver

上の図のGCC-10.7.pkgをダウンロード。これはファイルを開けば簡単にインストールが出来るようになってます。

次に、「~/.bash_profile」に、

export CC=gcc-4.2

と書きます。このファイル(.bash_profile)はRVMのインストールのときにも書き込んだやつですね。

.bash_profile

これが終わったらターミナルを再起動。

Rubyを入れてみる

では、ちゃんとRubyがインストールされてるかの確認をしたいと思います。

※そうそう、参考にした記事にはRVMの再インストールをやってましたが、再インストールしないでそのままRubyが使えて、新しいものも入れられたので今のところ僕は再インストールしてないです。

$ rvm list known

このコマンドでインストール出来るRubyの確認。

machida — bash — 55×26

Rubyの1.9.3のp0がリストにありましたので、これを入れてみます。

ちなみに、Rubyの1.9.3のp0が出ない方はRVMのアップデートが必要。以下をやってみてください。

$ rvm get head
$ rvm reload

上手くいかなかった方はこちら

では、インストール。コマンドはこれ。

$ rvm install 1.9.3-p0

インストールができたら、

$ rvm list

このコマンドで自分のMacに入ってるRubyの一覧を確認。

machida — bash — 55×26

入ってました!

最新の実績

  • Remember The Wordpress
  • happy1000days
  • happy1000days
  • happy1000days

こちらも合わせてどうぞ

  • webデザイナーの為の「本当は怖くない」“黒い画面”入門

アフィリエイト