pdaXrom の arm cross compile と ipk 作成

Posted by yoosee on Gadget at 2005-07-21 23:42 JST

*1  Debian 上に cross compile 環境をつくる

pdaXrom のサイトから 1.1.0RC9 SDK を持ってきて展開。ドキュメントでは /opt に展開しろ等と書いてあるが、もちろん path さえちゃんと設定されればどこに置いても構わない。展開ファイルに付いている opt/arm/runzgcc-vfp.sh は LD_LIBRARY_PATH 等が一部うまくないので BASEDIR 等を併せて適当に修正して実行。あとは普通に source code を make する。compiler や architecture の指定などは configure で色々指定するか、面倒ならば Makefile の CC, LD あたりを gcc から armv5tel-linux-gcc にしておけばいいようだ。

*2  ipkg を作る

ipk は deb 形式を手本とした単純な tar.gz ファイルらしい。zaurus-ja.sf.jp のドキュメントを参考に構築するが、ipkg-build の中で tar の --exclude がどうもエラーを吐いてくれるので、手で tar して作ったら、control.tar.gz 等を ./control.tar.gz と ./ 付きで tar しなければならないのに気付かずにしばしはまる。それ以外は概ね簡単。

Debian arm の deb を dpkg -x で展開して ipkg 化と言うのも試みたが、まぁ概ねうまく行くんだがライブラリの依存関係とかで結構面倒くさいことになることも多いみたい。chroot debian をそのまま使う手もあるけど、本体メモリだけに収めるには容量的に厳しそうだし、適当に re-package した方がいいかも。

ところで ipkg は上書き、競合といった条件は見てくれていないらしく、A, B で同じファイルを使っている場合は、例えば A をremove すると B に必要なファイルも警告も何も無しで消えてしまうので注意が必要。

*3  emacs の cross compile に挑戦するも...

emacs の cross build に挑戦したが途中で詰まった。神木さんの記述 によれば、emacs を作るには、temacs を build した後に temacs による dump 処理を実行する必要があり、つまり arm の temacs を実行しなければならないので i386 だけで完結して処理が出来ない。どうするかと言うと i386 host-native と arm の binary を同時に build していき、temacs の処理は arm native な環境に object と temacs を持ち込んで (nfs で持って行くのが簡単そう) dump する必要があるらしい。やり方が分かれば難しくはないんだが、どのみち面倒くさいから延期。

*4  入れたもの

firefox, mrxvt, x11vnc, gaim-ja, xchat, imagemagick, screen, lv, sed, grep, nkf, ruby, w3m, mutt, isync, uim, anthy, jfbterm, wwwoffle など。mrxvt は multi-tab で使える rxvt で、もちろん日本語も通る。uim-xim からの日本語入力が効かないのが困るが、設定がまずいんだろうか。しかし terminal 上で screen, zsh, w3m, emacs 辺りがあれば生きて行けそうな私は実は X 無しで jfbterm を使っていればいいんではないかという疑念もある。

( Permalink | Comments (0) | tags: linuxzaurus  )
Comments

Please write your comment. email address won't appear. Cannot use any HTML tags in comment.
コメントをお書き下さい。メールアドレスは公開されません。 またHTMLタグは利用できません。
Name   E-mail   URL
Comment

About W.W.Walker

World Wide Walker は yoosee による blog です。PDA, Web・サーバ技術, 美味しい食べ物などの話題を取り上げています... read more

このエントリーのブックマーク

Monthly Archives

Select Month to read