脳汁portal

アメリカ在住(だった)新米エンジニアがその日学んだIT知識を書き綴るブログ

Ruby motionの導入方法

環境

インストール

1. Ruby motionのインストール

以下のリンクからRuby motionの利用登録を行います。
登録すると入力したemailアドレスにダウンロードリンクとライセンスキーが送られてくるので、それをインストールします。
(今回はStarterを選択)
Download | RubyMotion
f:id:portaltan:20151006104732p:plain

  • 通常は/usr/bin/motionにインストールされています
2. Xcodeのインストール

以下のリンクからXCodeをダウンロードしてインストールします。
(今回は7.0を選択しました)
Xcode - ダウンロード - Apple Developer

3. ruby motion projectの作成
cd ~
motion create HelloMotion
cd HelloMotion
rake
4. 確認
$ rake
Build ./build/iPhoneSimulator-9.0-Development
Create ./build/iPhoneSimulator-9.0-Development/HelloMotion.app/Info.plist
Simulate ./build/iPhoneSimulator-9.0-Development/HelloMotion.app
*** Starting simulator
(main)> 
  • rake コマンドでシミュレーターを起動する
  • 成功すれば起動画面が出た後にアプリの画面が表示される

f:id:portaltan:20151006193824p:plain
f:id:portaltan:20151006193917p:plain

5. 終了
(main)> exit
  • exitコマンドで終了
  • 終了後はシミュレーターのRubymotionの自動で終了される

f:id:portaltan:20151006194031p:plain

動かない場合は

まずはSDKの確認

xcodebuild -showsdks
OS X SDKs:
	OS X 10.9                     	-sdk macosx10.9
	OS X 10.10                    	-sdk macosx10.10

iOS SDKs:
	iOS 8.4                       	-sdk iphoneos8.4

iOS Simulator SDKs:
	Simulator - iOS 8.4           	-sdk iphonesimulator8.4
ls -la /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs
ls -la /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs

ERROR! The requested deployment target SDK is not available or supported by RubyMotion at this time.

command line toolsが入っていないかも
Ruby motionで使用するcommand line toolsをダウンロードします。
以下のPageで検索し、対応のライブラリをダウンロードしてインストール。
(今回はCommand Line Tools(OSX 10.10) for Xcode 6.4)
https://developer.apple.com/downloads/

SDKのversionを指定してみる

vi Rakefile
  # 以下を追加
  app.deployment_target = '8.4'

ERROR! You are using RubyMotion Starter. Only iOS 9.0 is supported in this release. If you would like to target older or newer (in beta) versions of iOS you can purchase a paid subscription.

  • Starterパッケージを使っている場合はversionの制限があるので以下のようにSDKのversionを宣言する
vi Rakefile
  # 以下を追加
  app.sdk_version = '9.0'
  app.deployment_target = '9.0'

ERROR! Can't locate iPhoneSimulator SDK 9.0 at `/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator9.0.sdk'

上で指定したversionのiPhoneSimulator SDKがないと言われているのでそれをインストールする

最終的に動いた環境

$ xcodebuild -showsdks
OS X SDKs:
	OS X 10.11                    	-sdk macosx10.11

iOS SDKs:
	iOS 9.0                       	-sdk iphoneos9.0

iOS Simulator SDKs:
	Simulator - iOS 9.0           	-sdk iphonesimulator9.0

watchOS SDKs:
	watchOS 2.0                   	-sdk watchos2.0

watchOS Simulator SDKs:
	Simulator - watchOS 2.0       	-sdk watchsimulator2.0