2008-05-12
■[MacOSX][D言語][SDL]MacでSDLアプリケーションの作り方 
抜けてるかもしれないけどまとめるよ!!
目標としては、Windows環境下でexeとdllと適当なリソースぽいぽいっと入れてOKみたいな、お手軽パッケージ。ユーザ側に別個ライブラリ等のインストールを要求しないのがいいよね、と。
SDL
- 本家libSDL
- http://www.libsdl.org
- 調べものはDoc Wikiで
- 他ライブラリ(SDL_mixerとかSDL_gfxとか)はLibrariesで検索する
とりあえずとにかく動かしたい!!
frameworkとリンクする
- SDL_framework
- インストール
.app形式にする
- .app形式とは
- 基本はframeworkとリンクしてやって、あと.app形式固有の対処をするます
- .appを作る
- カレントディリクトリ問題
Dの場合(dHell併用)
version (Darwin) { public int main(char[][] args) { string path = args[0]; std.file.chdir( path[0 .. (rfind( path , "/" ) + 1)] ); return Hell_main(args); } } else { public int main(char[][] args){ return Hell_main(args); } }
Cの場合
#include <string.h> #include <unistd.h> // // 略 // int main(int argc, char *argv[]) { car AppPath[1024]; car AppPathw[1024]; car *char_work; it strlen; i ( argc > 0 ) // change dir to .app/Contents/MacOS { strcpy( AppPath, argv[0] ); char_work = strrchr( AppPath, '/' ); strlen = char_work - AppPath; strncpy( AppPathw, AppPath, strlen ); AppPathw[strlen] = '\0'; chdir( AppPathw ); }
こんな感じ?
.appをテストしたり他いろいろ
--->hoge.app/Contents/MacOS/hoge
- とすると、ディリクトリ構成が同じ状況で起動できる + stdoutが見れる
- .appにアイコンを付ける
- .appの中が見たい
- 手っ取り早くパッケージを調べたい人は、既に動いているパッケージの中身を見るのがおすすめ
- 他配布には http://d.hatena.ne.jp/o_mega/20080427
- dmgがいいらしいよ
おまけ。ライブラリとstatic-linkする
static-linkするとライセンスによっては配布時に問題が発生するので注意。
コメントを書く
トラックバック - http://d.hatena.ne.jp/o_mega/20080512/1210612958
リンク元
- 235 http://nagoya.cool.ne.jp/o_mega/
- 45 http://www.google.co.jp/search?hl=ja&client=firefox-a&rls=org.mozilla:ja-JP-mac:official&hs=5eX&q=mac+アプリ 作り方&btnG=検索&lr=lang_ja
- 42 http://www.google.co.jp/search?q=mac+sdl&lr=lang_ja&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:ja:official&client=firefox-a
- 41 http://www.google.co.jp/search?q=SDL+mac&lr=lang_ja&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:ja-JP-mac:official&client=firefox-a
- 37 http://nagoya.cool.ne.jp/o_mega/index.html
- 35 http://www5.atwiki.jp/yaruhara/pages/74.html
- 29 http://www.google.com/search?client=safari&rls=ja-jp&q=SDL+mac&ie=UTF-8&oe=UTF-8
- 25 http://www.google.com/search?client=safari&rls=ja-jp&q=mac+sdl&ie=UTF-8&oe=UTF-8
- 22 http://www.google.com/search?hl=ja&client=safari&rls=ja-jp&q=sdl+mac&btnG=検索&lr=lang_ja
- 21 http://www.google.co.jp/search?hl=ja&safe=off&client=firefox-a&rls=org.mozilla:ja-JP-mac:official&hs=ZPp&q=sdl+mac+port+compile&btnG=検索&lr=