llvm release 3.3のコード
llvm-avrがtrunkから引っ張ってきたコードベースだと上手く動かないので
Release 3.3版のコードをとりあえず引っ張ってくる
svn co http://llvm.org/svn/llvm-project/llvm/tags/RELEASE_33/final llvm
cd llvm/tools
svn co http://llvm.org/svn/llvm-project/cfe/tags/RELEASE_33/final clang
svn co http://llvm.org/svn/llvm-project/lldb/tags/RELEASE_33/final lldb
svn co http://llvm.org/svn/llvm-project/poolalloc/trunk polalloc
svn co http://llvm.org/svn/llvm-project/libcxx/tags/RELEASE_33/final libcxx
svn co http://llvm.org/svn/llvm-project/compiler-rt/tags/RELEASE_33/final compiler-rt
polallocはRELEASE 3.3が存在していなかったので、とりあえず最新版を使うことにする
OS X 10.8にgcc 4.8をインストールする
OpenCore 1000用のLLVM llvm-or1kをOSX10.8にインストールしようとしたところ、OR1KDisassembler.cppでエラーが発生。エラーメッセージをみると2進数表現b11111(31)がエラーの原因となっている様子。
llvm[4]: Compiling OR1KDisassembler.cpp for Debug+Asserts build
llvm-or1k/lib/Target/OR1K/Disassembler/OR1KDisassembler.cpp:131:38: error: invalid suffix "b11111" on integer constant
Googleで調べてみると0bから始まる二進数表現はgcc 4.4.0から使えるとのこと。(参照URL)
OSX 10.8はllvm-gccは4.2.1だったので、別途Homebrewを利用してgcc4.8をインストールしました。
以下インストール方法
- Homebrewでgccをインストール
brew tap homebrew/versions
brew install gcc48
- インストール後はシンボリックリンクを変更
sudo ln -sf /usr/local/bin/gcc-4.8 /usr/bin/gcc
sudo ln -sf /usr/local/bin/g++-4.8 /usr/bin/g++
Snowleopardに開発用としてSDL 1.2.14をインストールする
OSX 10.6.8 XCode 3.2.6に開発用としてSDL 1.2.14をインストールしたので、以下その備忘録。
1. ファイルのダウンロード
SDLのhome pageのSDL downloads pageから
- Mac OS X Runtime Libraries(SDL-1.2.14.dmg)
- Mac OS X Development Libraries(SDL-devel-1.2.14-extras.dmg)
をダウンロード。
2. ランタイムのインストール
SDL-1.2.14.dmgをマウントし、そこからSDL.frameworkを
/Library/Frameworks
にコピーする
3. テンプレートのインストール
ターミナルを起動し、そこから以下のコマンドを実行してインストール先となるディレクトリを作成
sudo mkdir -p /Library/Application\ Support/Developer/Shared/Xcode/Project\ Templates/Application
SDL-devel-1.2.14-extras.dmgをマウントし、そこから
XcodeTemplates/TemplatesForXcodeSnowLeopard
を先ほどターミナルから"sudo mkdir -p"で作成したディレクトリ
/Library/Application Support/Developer/Shared/Xcode/Project Templates/Application
にコピーする
4. ドキュメントのインストール
SDL-devel-1.2.14-extras.dmg上の
Documentation/docs/XcodeDocSet/org.libsdl.sdl.docset
を
/Library/Developer/Shared/Documentation/DocSets
にコピーする
5. その他SDL追加パッケージ
ついでに以下のパッケージ
をダウンロードし、そのFrameworkを
/Library/Frameworks
にコピー
applicationDidFinishLaunchingが呼ばれない
iPhone/iPad ゲーム開発ガイドの第3章のサンプルコードを入力していて、AppDeligateに追加したapplicationDidFinishLaunching:が呼ばれない。
テンプレートに元々あったdidFinishLaunchingWithOptionsをコメントアウトするとapplicationDidFinishLaunchingが呼ばれるようになりました。
調べてみると、iOS3.0以降は、application:didFinishLaunchingWithOptions:の使用を推奨しているとのことなので、自分で追加したapplicationDidFinishLaunchingを削除し、同様の内容をdidFinishLaunchingWithOptionsに記述することにしました。