2006年5月14日の日記を表示中

2006年 5月14日 (日)

OpenBlockS

ちょっと前に購入してそれっきりだったOpenBlockS266ですが,そろそろ投入しないとまずそうなんで,ひとまず性能見るためにセットアップしてみました.

Webベースの設定ツールでIPアドレス変えてみたり日付設定してみたりしたんですが,何かもどいっすねこりゃ.しかもユーザnosukeを追加しようとして,UIDを10001にしたら「32768以上に汁!」とか怒られた上に元々あったuser1とかいうログイン用のユーザアカウントが消滅(;´Д`).使いやすいんだか使いにくいんだかよくわかりませんな・・・.どこぞの無線LANステーションよりははるかにいいですが.

続いてHDD起動化することに.ばらしてCF用のアダプタ外して,前にT42で使ってた60GのHDDをさしてFlashから起動.パーティション切って初期化して,適当にマウントしてftpでぷらっとほーむのサーバからイメージ持ってきて展開して,etcの下書き換えて,HDDから起動するようにFlashに書いて終わり.ぷらっとホームのFTPサーバが大変遅いのがあれですが,実に簡単ですなぁ.珍しく何もはまること無く無事起動しました.

さて,どうやってネットワークの設定とかするのかなー・・・ってなんだこのFreeBSDみたいな設定ファイルの構成は(^^;.おそるべしぷらっとほーむのSSD/Linux.そういや昔BSDマガジンのパロディ号にBSD/Linuxとかいうのが出てた気がしますが,こんな感じなんですかね(笑).まあ大変わかりやすくていじりやすくて助かりますが.と,まあ,現在こんなところで,まだNATにしてスループット見るとかできてないっす.

そういや,Linuxってifconfigで「eth0:0」とかにIP設定するだけで同じNICに複数個IPアドレス振れるんですね.知らなかった・・・.なんて簡単な.

ifconfig eth0:0 192.168.253.1 netmask 255.255.255.0

遅いセルフビルドを何とかする話

別にZaurusに限った話ではないんですが,クロスコンパイラがちゃんと用意できる環境であっても,クロスコンパイルせずにネイティブ環境でビルドするのはやっぱ楽だと認識しています.確かに貧弱なマシン用の実行バイナリ作る場合,高性能なデスクトップとかでクロスでばりばりやるのが速くて快適ではありますが,ひとたび configureが全然通らんとか(中でライブラリの有無を確認するのにビルドして実行とかしちゃったりしてるとか),makeでできるファイルの一部はネイティブ実行できないとまずいとか(bootstrapとでもいうのか?),そういうのに遭遇するとクロスはほんと辛いです.あ,パッケージを使って環境を作らない,という前提の話ですよ?もしくは「俺がパッケージャだ」みたいな話(笑)

そんなわけで(?),ここんとこずっとセルフビルドしてるわけですが,貧弱な環境でのセルフビルドの弱点はやっぱ遅さとメモリの足りなさですねぇ.遅いのは我慢できるとしても,メモリ不足はかなり痛いです.ものすごい勢いでswapした挙げ句,g++がセグって落ちるとかもうね・・・.

で,一昨日Qtを再コンパイルしようとしたらこの問題が出たんで,これを何とかできんのかとちょっと考えてみたという話です(前置きが長いな・・・).何を考えたかというと,このときの経験を元に以下のようなことを・・・.

  1. gccやg++の引数やオプションを見て,「-c」がついている場合には,「-E」に置き換えて出力ファイル名も変更してマクロの展開とかヘッダの取り込みとかだけやる
  2. 出力ファイルをクロス環境のあるところにscpなりrcpなりでコピー
  3. クロス環境の方にrshなりsshなりで入って,クロスコンパイラでさっきの出力ファイルを今度は「-c」をつけてコンパイル
  4. 終わったらできたファイルをscpでローカルに持ってきて,本来の出力ファイルとして置く

と,まあ,要するに,configureはネイティブにでやって,その後もプリプロセッサのところとリンカのところはセルフでやって,オブジェクトファイル作るところだけはクロスでやってしまおうという話です.実に単純なアイディアなんで,単に自分が知らないだけでその道の方々のところでは当り前のように使われてるんじゃないかという気もしますが(あるいは自分のgccへの理解が間違っててこれじゃ全然うまくいかないとか),クロス環境があって,ラッパーが用意できればそれで試せる話なんで早速やってみることにしました.

まずはOpenZaurus用のクロス環境を構築.実はこれがあってOpenZaurus用のクロスのglibcを入れようと思い,monotoneなんかを入れてしまったのが昨日の話.何で配布されているSDK使わないかって?そりゃぁ,セルフとgccのバージョン揃えたいからですよ(^^;. そしてまたしてもgccのsoft-float回りではまりました(^^;;;

で,クロス環境が何とかできたんで,今日になってラッパーをちょこちょこっと書いてみることに.こっちは瞬時にできるだろうと思いきや,オプションを置き換える部分でひっかかりました(^^;.普通のオプションとか引数とかだけなら簡単なんですが,例えば間に空白が入ってるような引数があったりしたら・・・.ってことを考え始め悩みまくり.まあ,最終的にxargsを使うとうまくいくことがわかったんで,これを使うことに.

で,早速これを使ってQtをビルドですよ.う・・・.こ,これは・・・は,速い!狙い通り,g++でのビルドがもりもり進んでいきます(笑).これさえあればFirefoxのビルドも恐くないぞ!・・・で,ちゃんと動くのかな,このバイナリ・・・動いたーヽ(゜∀゜)ノ.そしてビルドし直したことにより,ばっちりimmodule-qt介してuimで入力できるようになりました.何か前は最初から「-DQT_NO_XINERAMA」付けずにビルドしたのがまずかったみたいです.めでたいなこりゃ.

CDとか

紅蓮白夜 (Sound Iemitsu.)
こちらは旧作.未だに自信を持ってジャンルの区別ができませんがトランスらしいです(^^;.全体通して聴き易くて(・∀・)イイ!
DeStiny Land (バウハウス)
オリジナル作品.ジャンル色々です.なぜかつい何度も聴いてしまいます.紅白もそうでしたが,このジャケットやブックレットのイラストはバウハウスさんのどちらかの方が描いてるんでしょうか?ほんわかしてていいすねー.
TANO*C COREnival (ハードコアタノシー)
CDがなかなか読めなくて焦った作品(^^;.ハードコアタノシー作品は多分これが初めてです.2枚組で1枚目が (^ω^) の絵の「Happy & Trancy side.」,2枚目が (゜∀。) の絵の「Gabba & NRG side.」だそうです.ジャンルの細かいこととかよくわかりませんが,とりあえず聴いて1枚目と2枚目がずいぶん違うことはわかります(^^;.1枚目はまあ普通.3曲目とか良かったっす.が,2枚目がやばい.そういうジャンルなんでしょうが,5,7,8,10,12とことごとくきついorz.6曲目みたいなのは大好きなんですけど・・・.

2006年5月14日の日記を表示中

中の人情報

名前:
nosuke (のすけ)
メール:
sasugaanijaのgmail.com
「の」は「@」みたいな
関連リンク:

カレンダー

2006年5月
  1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30 31      

<<先月分

翌月分>>

最新の10件のエントリ

最近の10件のコメント

過去ログ