ホーム -> ラボ -> iOS -> Scratch for iOSのセルフビルドに挑戦

ラボ

2013.06.28
Scratch for iOSのセルフビルドに挑戦

弊社デザイナーがXcodeの勉強を兼ねて、教育用プログラミング「Scratch」のXcode(v4.6.3)によるビルドに挑戦!経過を覚書としてポストしていきます。

Scratchとは

Scratch」はMIT Media Labが開発している教育用のプログラミング環境です。
様々な命令文が定義されたブロックを組み立てる事で、子供や初心者でも分かりやすく、視覚的にプログラミングの概念を学ぶことができます。

iOS版はAppleの規約変更により2010年にApp Storeから削除されましたが、現在オープンソースとして公開されています。
Scratch.app.for.iOS

今回はこのScratch for iOSのビルドに挑戦です。

覚書

ビルド環境
  • OS X Mountain Lion(v10.8.4)
  • Xcode 4.6.3
コンパイラが無い!

GitHubから「Scratch.app.for.iOS」をローカルにCloneし、Xcodeで開くとコンパイラ未対応のエラー。
「Unsupported compiler 'GCC 4.2' selected for architecture 'i386'」
Xcode4.3からデフォルトになった2つのコンパイラは、名前は似ていますが「GCC 4.2」とは別物で、どちらを選択してもエラーが出てしまいます。

[Build Settings]>[Build Options]>[Compiler for C/C++/Objective-C]

  • Apple LLVM compiler 4.2
  • LLVM GCC 4.2
コマンドラインツールをインストール

OS Lion以降、コマンドライン上でgccを使うにはXcodeを経由してインストールする必要があるそうなので一応インストールしておきます。
[Xcode]>[Preferences]>[Downloads]>[Components]タブから「Command Line Tools」インストール→何も変わらず。
コマンドラインからはgcc(llvm?)を呼び出せるようになりました……

Xcode 4.3から変更されたディレクトリ構造

Xcode4でGCCを使えるようにする手順の記事を発見。
Xcode集中連載(5):Xcode 4.3.3 にGCCをインストール
こちらを参考にGCCをインストールしてXcodeを開きなおすと、[Build Settings]の選択肢にGCC4.2が追加されました!が、[Run]ボタンを押してみるとエラーでビルドならず。
「can't exec '/Applications/Xcode.app/Contents/Developer/user/bin/gcc-4.2'(no such file or directory)」

今まで/DeveloperディレクトリにインストールされていたXcode関連のデータがXcode 4.3 以降はXcode.app内にまとめられてしまったために、参照先違うのでは?という予想。
gcc4.2のインストール先またはXcodeからの参照先を変更すれば良さそう?変更方法を調査中です。

(続く)

このページを編集する(内部専用)