2006年5月16日から2006年5月12日までの日記を表示中

2006年 5月16日 (火)

icewm

何か最近使う機会が多かったりするんですが,「フォーカスしてないウィンドウに対して中クリックした際に,貼り付けられるけどフォーカスが移らない」というのが微妙に不便だったりします.直してみるかーとソース見てみたら実は「ButtonRiseMask」なんてのを設定すれば済むことが判明.(゜Д゜)ウマー.ついでにテーマ探し始めたりして他のことが全然進まん・・・.

PowerPC向け開発環境

クロス環境作ってみましたが,ほとんどパッチとか何も当てずに実にあっさりできあがりました.OpenZaurusのはまりっぷりとはえらい違いです(^^;.さて,なにから始めようか・・・.

mixiの幅

mixiのレイアウトが選択可能になりましたなぁ.今までStylishとGreasemonkeyを駆使して無理矢理幅を800pxに詰めてましたが,その必要ももう無し,と.

2006年 5月15日 (月)

分散ビルド

gentoo大好きヒタヒタさんにこれだろうと指摘されました.あー,まさに同じですな.もっとも自分のはありあわせですが(^^;

で,Qtの一部で使ってみてうまくいったので気をよくして,Firefox-1.5.0.3のビルドにも使ってみました.その結果,ラッパーが「-DOSTYPE=\"Linux2.6\"」みたいなのをうまく処理できない事実が発覚.うはー,このダブルクォーテーション問題,やばいんだよなぁ・・・.案の定,あれこれ試すもちっともうまくいかず,結局シェルスクリプトで頑張るのは諦めて,perlで書き直すことに orz.でもやっぱこの辺書くのはperlの方がずっと楽だ(^^;.

あと,リモートでコマンド実行するのもやっぱ同じようにダブルクォート問題とか出てきそうだったんで,ローカルにシェルスクリプトの形で書き出してそれをソースといっしょにコピーして,リモートにsshとかで入ってそれを実行する形にしてみました.system使いまくりなのがちょっとあれですが,まあこんな感じです.パスとか変更して適当な場所に置いておき,普通にconfigureした後に,たとえば以下のようにCCとかCXXを置き換えてやると,分散コンパイルっぽいことをしてくれます.

make CC=dgcc.pl CXX=dg++.pl

ちなみにこれで作ったFirefoxも普通に動作しました.∩( ・ω・)∩ワーイ

OpenBlockS

あー,FreeBSDというよりNetBSDライクなんですか.へー.最新RELEASEのsrc.tgz持ってきて開いてbmakeしてみたらソースが配布元から消えまくっててしょんぼり(´・ω・`).まー,どんなパッチ当ててるかとか確認できればいいか.こちらもちまちまとクロス環境構築開始です.

uim.el

uim-el-helper-agent導入してから,ワークスペースを切替えた直後とかに稀にEmacsが何も操作を受け付けなくなることがあります.10秒くらいすると回復するんですが,原因が掴みきれてません・・・.その間CPU負荷があがったりしてるわけでもないし.単に入力待ち状態って感じです.デバッグメッセージ見ると,何かメッセージが2個続けて送られたりしてるんですよね.うーん,そんな状況,おこらないはずなんですが・・・.謎だ・・・.uim-el-helper-agent側に細工をして様子見・・・.

例大祭3

ついにカタログを手に入れたぞ!めろんで山積みだったような気がするんですが,実はあんまり売れてないんか?まあ入れ換えにならない程度に賑わうのが一番いいですね(^^;.しかし厚ぼったいですな.こんなにサークル出るのか・・・.そしてこのままではCD・ゲームだけで確実に50超えるorz.これに本が数冊・・・で済むのかな?

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月13日 (土)

OpenZaurusのglibc

当ててるパッチとかを入手するにはmonotoneなるツールが必要とのこと.で,こいつを入れようと思ったら boostというのが必要なんだと.めんどくさいですなぁ.で,boost作って入れてみたんですが,インストールで入るファイルの総量が450M近くあるんですけど・・・(;´Д`).まあ,monotoneのINSTALL見る感じだと全部入れる必要無いとは思うんですが,欲しかったファイル入手できたし,もう使うこともないだろうからmonotone共々削除しとくか・・・.

uim-qt vs Konqueror

これ見て工エエェェ(´д`)ェェエエ工と思ったわけですが,自分のところで試してみたら確かにKonquerorの入力フォームとかで現象が発生.KNotesでしか日本語入れることなかったから全然気づかなかったし.

[コメントを書く]

いりの 2006/05/14(日) 13:25:25
あ、nosukeさんのところでもなりますか。俺一人じゃなくて良かった。
daisuke氏のパッチを一つ前(20051018)のにして、今qtをビルドし直してみてます。
意味ないですかね?
Celeron500のマシンでやってるから夕方までかかりますな。
nosuke 2006/05/14(日) 14:09:09
おっと,上に書いてませんでしたが,Qt-3.3.5+immodule-20051018 でやってみても同じ結果でした.
ひとまず駄目なときは↓のようなメッセージがでてますね.
sending IMEnd with 0 chars to 0x885cf18, text=
QTextCursor::gotoParagraph Index: 7 out of range
いりの 2006/05/14(日) 17:42:45
はあ、ビルド終わった。uimもビルドし直したけど確かに駄目ですね。ガク。
いりの 2006/05/16(火) 10:42:18
qt-immoduleの件、まだしつこくやってますよお。
fc5のqtのビルドの仕方見てみると、widget/qtextedit.cppまわりにもっと色々パッチあてて修正してるんですよね。
今、fc5が当ててるパッチ全部あててqtのリビルド中。俺コード分かんないから、やり方が場当たり的でダメねえ。
nosuke 2006/05/16(火) 12:03:11
おおすごい.ちなみにKDEはバージョンいくつが動いてます?
いりの 2006/05/16(火) 14:55:18
やっぱ駄目でした。KDEのバージョンは、3.5.2です。
多くの人は問題感じてないんですかねえ?
nosuke 2006/05/17(水) 01:10:18
あーKDE-3.4.3でもでますねー.
いりの 2006/05/18(木) 18:45:03
頭に来て、fc5を余ってるハードディスクに入れて試したら、症状出ずにちゃんと動くんですよ。このままfedora使うかな。

東方絢櫻祭

あー,今日は東方絢櫻祭だったんすよね.当然自分は日本にいるわけですが(´・ω・`).あー,もう例大祭まで1週間なんですよねー.そしてチェックしてあるものだけでも相当な数ですなこりゃ・・・.

2006年 5月12日 (金)

linux-2.6.16.16

QEMU動かしてみたくなりソースからビルドしようとしたんですが,例によって2.6.16のカーネルヘッダ回りのエラーが山のように発生.しかも今までのように簡単には取れず.というわけで,観念してカーネルをあげてみることにしました.今回のuptimeは42日でした.カーネル上げたらQEMUのビルドでエラーでなくなって(゜Д゜)ウマー.

perlの例外処理

catch/throwみたなことをPerlでやりたくて調べたら,なんとeval/dieでできるのね.なるほど.すごい.

[コメントを書く]

tacash ◆cR08PK3l1o 2006/05/13(土) 10:01:58
Perl is すこい
nosuke 2006/05/13(土) 13:44:32
すこいキタ━━━━(゜∀゜)━━━━ッ!!

mlterm-2.9.3とzsh

mlterm.tiの記述の中の「sgr0=\E[m\E(B」がzshのプロンプトを乱す模様・・・.よくわからんのですが,これを「sgr0=\E(B\E[m」にするとプロンプトにごみが入らなくなります.

[コメントを書く]

佐藤精一 2006/05/13(土) 22:16:24
調べてくれてありがとうございます。
ncursesのバージョンを教えてください。
nosuke 2006/05/14(日) 02:39:24
こんにちは.報告までにもうちっと調べてから・・・と思ってました.すいませんです.
上記現象の出ている環境のncursesは5.3 (5.3.20021012) です.

2006年5月16日から2006年5月12日までの日記を表示中

中の人情報

名前:
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件のコメント

過去ログ