unknownplace.org

# 2008-10-08

iPhoneアプリをLinuxで作成するの法

iPhone Developer Program の申請が全然通らないので、勝手アプリの作成環境を整えてみた。

Cydia でおなじみの saurik 氏がクロスコンパイル環境の作り方を以下のページに書いてくれていて、基本これに従えばOK。

Upgrading the iPhone Toolchain - Jay Freeman (saurik)

すごいなー。saurik++

簡単に環境作れるようにスクリプトにまとめた。ヘッダのコピーのとことかちょっと追加してある。

http://gist.github.com/15487

簡単に説明。

iPhone のファームウェアのファイルを、ごにょごにょ(ググればすぐわかる)して展開して ~/tmp/iphone/iPhone2.1 にコピー。

iPhone SDKをダウンロードしてきて展開して MacOSX10.5.pkgiPhoneSDKHeadersAndLibs.pkg~/tmp/iphone/Developer に展開。

http://www.opensource.apple.com/darwinsource/Current/ から

  • CF-*
  • DiskArbitration-*
  • IOCDStorageFamily-*
  • IODVDStorageFamily-*
  • IOGraphics-*
  • IOHIDFamily-*
  • IOKitUser-*
  • IOStorageFamily-*
  • Libc-*
  • WebCore-*
  • cctools-*
  • configd-*
  • launchd-*
  • libsecurity_authorization-*
  • libsecurity_cdsa_client-*
  • libsecurity_cdsa_utilities-*
  • libsecurity_cms-*
  • libsecurity_codesigning-*
  • libsecurity_cssm-*
  • libsecurity_keychain-*
  • libsecurity_mds-*
  • libsecurity_ssl-*
  • libsecurity_utilities-*
  • libsecurityd-*
  • xnu-*

をダウンロードして ~/tmp/iphone/apple に展開。(*はバージョン番号)

で、あとは上のスクリプト実行すれば ~/app/toolchain にクロスコンパイル環境がインストールされる。YATTA!

ちなみに僕の Debian 環境ではこの作業をするために

flex bison gcc-multilib gobjc

などのパッケージを追加でインストールする必要があった。

これで iPhone 用のバイナリが作れるようになる。あとは ssh なり何なりで iPhone にファイルを転送すればOK。

ただ iPhone は署名済みなアプリケーションしか実行できないのでそこもまた saurik 氏の記事

Bypassing iPhone Code Signatures - Jay Freeman (saurik)

を参考にすれば回避できる。

# 2008-10-01

OSXの.dmgファイルをLinuxでごにょるの法

dmg2img というのがよくできてる。

dmg2img xcode.dmg xcode.img

とすると xcode.img という HFS+ のイメージファイルにしてくれる。

で、

mount -t hfsplus -o loop xcode.img /mnt

とかでマウントできる。

その中のpkgファイルの中身を取り出すには

xar -xf /mnt/Packages/MacOSX10.5.pkg Payload
mv Payload Payload.gz
gunzip Payload.gz
mkdir dump
cd dump
cat ../Payload | cpio -i -d

とかするとdumpディレクトリ以下にpkgが展開されるという感じ。

# 2007-08-17

lv の alt screen

lv 便利なんだけど、alternate screen で動作するのがちょっとなぁ。

終了すると今まで表示してたの消えちゃうのが嫌。これってなんか制限できないのかなー。オプションみても特にないようだ。

# 2007-07-17

ps の日付パース

ps の出力をパースしたかったんだけど、日付部分めんどいなと思いきや Date::Manip 使ったら一発だった。覚えててよかった!

30boxes.pl とかで使われてるやつ。

# 2007-04-16

mutt と irssi

なんか似てるよね。

mutt 使いは irssi も気に入る説。

# 2007-03-16

colinuxの利点

cofsもあった。

VMWare Server だと vmware-tools についてるファイル共有のカーネルモジュールをインストールすれば共有できるはずだけど、Debianではコンパイルできなかった。

colinux とかまだつかってるの

これみて、

デスクトップ百景

そう思った。いまは VMWare Server の時代!!

僕が思う colinux のほうが優れているところはその PC に ext3 領域とかあってそれを colinux から使いたいとかそういう場合があるときのみ。

それ以外はすべてにおいて VMWare Server のほうが優れていると思う。あ、パフォーマンスは分からない。

VMWare Server のほうが特に優れているところは以下。

仮想マシンをサスペンドできる

ので、Windows Update とかきて PC を再起せざるを得ない状況になったらおもむろに仮想PCをサスペンド。PC再起動。

再起後何事もなかったかのように作業続行可能。

使った分だけディスク消費

最初から確保する必要ナシング。

ネットワーク設定が豊富

colinux は VMWare でいうところの NAT か Host only というネットワーク設定で使うしかない(と思う)のだけど、VMware Serverはそれプラス Bridged モードというのがあり、VMWare の仮想ネットワークアダプタが直接ネットにつないでるかのように設定できる。

ゲストOSがDHCPでIPとったら、自分のPCからもLAN内のほかのPCからもそのIPでアクセスできるって感じ。hamachi もうごくよ。

後オレは使ってないんだけど、USBつかえたりとかもするっぽい。

などなど、なんでまだ colinux? って感じだ。

# 2007-02-17

64bit Debian で 32bit アプリを動かすの法

$ sudo aptitude install ia32-libs

hamachi がうごかんくてあせったわー。

# 2006-06-18

undefined symbol: FT_GlyphSlot_Embolden

ものすごーくひさしぶりに Gimp を使おうとしたら

gimp: symbol lookup error: /usr/lib/libcairo.so.2: undefined symbol: FT_GlyphSlot_Embolden

とか言うエラーで起動しやがらねぇ@ubuntu breezy

ぐぐったら

[debian-users:45959] Re: etchでKDEが起動しくなった

libxft2が中途半端な状態でtesting行きになったために同様の問題多数で阿鼻叫喚になっていますね (http://bugs.debian.org/cgi-bin/pkgreport.cgi?pkg=libxft2)。

libfreetype6をunstableから持ってくることで当面は解決できるようです。

とかが最初にきた。あらまぁ。utunbuもかよ。

apt-line に dapper のやつ追加して

sudo aptitude install libfreetype6 -t dapper

したら起動するようになった。

# 2006-05-07

CMS researcher - zsh: 直前にうったコマンドをクリップボードに(Mac OS X限定)

tail -n 1 ~/.zhistory | perl -pe 's/.*?;//' | xclip

かな。Linuxだと。

そういえばおなじようなネタで screen と X のコピペを同期するとか言うのあった気がするなぁ。

# 2006-05-01

synergy 経由で操作しているといつのまにか PC 自体のキーボードのキーリピートが無効になる。。なんだろ

# 2006-04-30

ubuntu on X41

なんか現実逃避で Thinkpad に Linux いれた。

ldr

なんかいろいろよくわからなくて苦労したけど、Windows と比べてると軽すぎる。。全然スワップしねぇ!!

あとインストーラの時点で無線 LAN 認識してたのは驚いた。Thinkpad の Fn キーとかも普通に使えるし。。すごいなあ。

# 2006-03-20

256色PuTTY with screen

でけた。

ごろさんのやり方を参考にいろいろ

subtechグループ - 'hceT'.sub(/\Z/,'bus').reverse - putty 256色

  1. screen の --enable-colors256 のコメントアウトをハズして debuild る
  2. ncurses-term を入れて /etc/terminfo を れて/usr/share/terminfo の symlink にする←これって大変微妙
  3. putty の xterm-256 を使うのチェックを入れる
  4. putty の端末タイプの文字列を xterm-256color に

1やって、2は ncurses-term (terminfo/xterm-256colors用) いれただけ。symlinkはいらねぽい。

3やって、4 は screen しかつかわなかったら変えなくてOk。

これで screen 上で 256color2.pl は通るようになる。

でも emacs, vim ともに TERM=xterm-256colors して起動しないと256にならん。こういうもんかね。

あと、このままだと背景色関係などおかしな部分が出るので .screenrc に

defbce on

と書いて bce モードを ON にする。こうすると vim とかの特定の colorschema で背景がおかしくなるのも治る。bce モードが何かは知らない(ぉ

後こうすると TERM が screen-bce とかになるのでいろいろなスクリプトの書き換えが必要、めんどい。

# 2005-11-17

iPodLinux on nano

試してみた。

素晴らしい。おもちゃが増えたlol

動画再生もすげ滑らかで、非圧縮AVIで容量食うのがあれだけど、もっとしょぼいのを想像してたので驚いた。iDoom は操作むずすぎ。

ちゃんとブートローダーで純正 firmware と iPodLinux とを簡単に切り替えられるようになっているのもポイント高い。入れなきゃ損っていう。

Page 1 of 1: 1