トップ 最新 追記
2003|01|02|03|04|05|06|07|08|09|10|11|12|
2004|01|02|03|04|05|06|07|08|09|10|11|12|
2005|01|02|03|04|05|06|07|08|09|10|11|12|
2006|01|02|03|04|05|06|07|08|09|10|11|12|
2007|01|02|03|04|05|06|07|08|09|10|11|12|
2008|01|02|03|04|05|06|07|08|10|12|
2009|02|03|06|07|10|11|12|
2010|01|02|03|04|07|09|10|11|12|
2011|01|03|04|05|06|07|08|10|
2012|01|06|08|09|10|12|
2013|01|02|03|04|07|09|11|12|
2014|01|03|04|05|06|09|
2015|04|
2016|01|08|
ここは旧えびめもです。えびめも2に移行します(2016/12/1)

2005年08月01日

みはるぞう

無線センサー みはるぞう。オンラインショップで発売開始しました。よろしくお願いいたします。


2005年08月03日

天から降ってきたサッカーボール

http://pya.cc/pyaimg/pimg.php?imgid=4644
すげー重そう…

LANDISK

分解せずにtelnetを組み込む方法。(今まで俺は分解してやってた)
http://eggplant.ddo.jp/www/pukiwiki/index.php?LANDISK%A4%D8%A5%ED%A5%B0%A5%A4%A5%F3

CAT760

linux-2.6.12.3にupdateしてみた。
> loading linux..
ok
Uncompressing Linux... Ok, booting the kernel.
Linux version 2.6.12-shsh (ebihara@boss) (gcc バージョン 3.4.3) #10 Thu Aug 4 03:17:41 JST 2005
Built 1 zonelists
Kernel command line: console=ttySC0,115200 rootfstype=ext2 root=0301
Setting GDB trap vector to 0x80000100
init_cat760_IRQ()
PID hash table entries: 512 (order:靆inux version 2.6.12-shsh (ebihara@boss) (gcc バージョン 3.4.3) #10 Thu Aug 4 03:17:41 JST 2005
Built 1 zonelists
Kernel command line: console=ttySC0,115200 rootfstype=ext2 root=0301
Setting GDB trap vector to 0x80000100
init_cat760_IRQ()
PID hash table entries: 512 (order: 9, 8192 bytes)
Interval = 83333
Using tmu for system timer
Console: colour dummy device 80x25
Dentry cache hash table entries: 16384 (order: 4, 65536 bytes)
Inode-cache hash table entries: 8192 (order: 3, 32768 bytes)
Memory: 62464k/65536k available (1866k kernel code, 3036k reserved, 309k data, 72k init)
PVR=04050187 CVR=20480000 PRR=00000520
I-cache : n_ways=2 n_sets=256 way_incr=8192
I-cache : entry_mask=0x00001fe0 alias_mask=0x00001000 n_aliases=2
D-cache : n_ways=2 n_sets=512 way_incr=16384
D-cache : entry_mask=0x00003fe0 alias_mask=0x00003000 n_aliases=4
Mount-cache hash table entries: 512
CPU: SH7760
NET: Registered protocol family 16
SH Virtual Bus initialized
cat760_pcmcia_mapping()
AX88796 mapped virt c0100000
cat709_ioport_map (0x300 - 0x31f) => 0xc0100000
cat760_init_cf()
PORT A READBACK=dc
CF-IDE attribute mapped virt c0102000
READBACK 42
vfree(c0102000)
CF-IDE i/o mapped virt c0102000
cat709_ioport_map (0x1f0 - 0x1f7) => 0xc01021f0
cat709_ioport_map (0x3f6 - 0x3f6) => 0xc01023f6
JFFS2 version 2.2. (C) 2001-2003 Red Hat, Inc.
Initializing Cryptographic API
SuperH SCI(F) driver initialized
ttySC0 at MMIO 0xfe600000 (irq = 55) is a scif
ttySC1 at MMIO 0xfe610000 (irq = 75) is a scif
ttySC2 at MMIO 0xfe620000 (irq = 79) is a scif
io scheduler noop registered
io scheduler anticipatory registered
io scheduler deadline registered
io scheduler cfq registered
RAMDISK driver initialized: 16 RAM disks of 4096K size 1024 blocksize
loop: loaded (max 8 devices)
ne.c:v1.10 9/23/94 Donald Becker (becker@scyld.com)
Last modified Nov 1, 2000 by Paul Gortmaker
NE*000 ethercard probe at 0xc0100000: 10 20 30 40 50 60
eth0: NE2000 found at 0xc0100000, using IRQ 33.
Uniform Multi-Platform E-IDE driver Revision: 7.00alpha2
ide: Assuming 50MHz system bus speed for PIO modes; override with idebus=xx
ide: SuperH generic IDE interface
hda: HMS360402D5CF00, CFA DISK drive
ide0 at 0x1f0-0x1f7,0x3f6 on irq 11
ide0: probed IRQ 11 failed, using default.
hda: max request size: 128KiB
hda: 3999744 sectors (2047 MB) w/128KiB Cache, CHS=3968/16/63
hda: cache flushes supported
 hda: hda1 hda2
Probing for flash chips at 0x00000000:
CAT760 FLASH: Found 1 x16 devices at 0x0 in 16-bit bank
 Amd/Fujitsu Extended Query Table at 0x0040
number of CFI chips: 1
cfi_cmdset_0002: Disabling erase-suspend-program due to code brokenness.
CAT760: Flash at virt 0xa0000000
Creating 3 MTD partitions on "CAT760 FLASH":
0x00000000-0x00020000 : "ipl"
0x00020000-0x00160000 : "kernel"
0x00160000-0x01000000 : "Flash FS"
slram: not enough parameters.
mice: PS/2 mouse device common for all mice
NET: Registered protocol family 2
IP: routing cache hash table of 512 buckets, 4Kbytes
TCP established hash table entries: 4096 (order: 3, 32768 bytes)
TCP bind hash table entries: 4096 (order: 2, 16384 bytes)
TCP: Hash tables configured (established 4096 bind 4096)
NET: Registered protocol family 1
NET: Registered protocol family 17
 hda: hda1 hda2
EXT2-fs warning: mounting unchecked fs, running e2fsck is recommended
VFS: Mounted root (ext2 filesystem).
Freeing unused kernel memory: 72k freed
INIT:ⅵersi
Setting parameters of disc: (none).
Activating swap.
Adding 114904k swap on /dev/hda2.  Priority:-1 extents:1
modprobe: FATAL: Could not load /lib/modules/2.6.12-shsh/modules.dep: No such file or directory
 
Cannot access the Hardware Clock via any known method.
Use the --debug option to see the details of our search for an access method.
System time was Sat Jan  1 00:00:08 UTC 2000.
Setting the System Clock using the Hardware Clock as reference...
modprobe: FATAL: Could not load /lib/modules/2.6.12-shsh/modules.dep: No such file or directory
 
Cannot access the Hardware Clock via any known method.
Use the --debug option to see the details of our search for an access method.
modprobe: FATAL: Could not load /lib/modules/2.6.12-shsh/modules.dep: No such file or directory
 
System Clock set. System local time is now Sat Jan  1 09:00:08 JST 2000.
Cleaning up ifupdown...done.
Not running depmod because /lib/modules/2.6.12-shsh/ is not writeable.
Loading modules...
All modules loaded.
FATAL: Could not load /lib/modules/2.6.12-shsh/modules.dep: No such file or directory
Checking all file systems...
fsck 1.37 (21-Mar-2005)
Setting kernel variables ...
... done.
Mounting local filesystems...
Cleaning /tmp /var/run /var/lock.
Running 0dns-down to make sure resolv.conf is ok...done.
Setting up networking...done.
Setting up IP spoofing protection: rp_filter.
Configuring network interfaces...done.
Starting portmap daemon: portmap.
 
Setting the System Clock using the Hardware Clock as reference...
modprobe: FATAL: Could not load /lib/modules/2.6.12-shsh/modules.dep: No such file or directory
 
Cannot access the Hardware Clock via any known method.
Use the --debug option to see the details of our search for an access method.
System Clock set. Local time: Sat Jan  1 09:00:14 JST 2000
 
Running ntpdate to synchronize clockmodprobe: FATAL: Could not load /lib/modules/2.6.12-shsh/modules.dep: No such file or directory
 
modprobe: FATAL: Could not load /lib/modules/2.6.12-shsh/modules.dep: No such file or directory
 
eth0: timeout waiting for Tx RDC.
eth0: timeout waiting for Tx RDC.
eth0: timeout waiting for Tx RDC.
eth0: timeout waiting for Tx RDC.
eth0: timeout waiting for Tx RDC.
.
Initializing random number generator...done.
Recovering nvi editor sessions... done.
INIT:狹nter
Starting system log daemon: syslogd.
Starting kernel log daemon: klogd.
Starting portmap daemon: portmap.
Starting Distributed Compiler Daemon: distccd.
Starting MTA: eth0: timeout waiting for Tx RDC.
eth0: timeout waiting for Tx RDC.
eth0: timeout waiting for Tx RDC.
eth0: timeout waiting for Tx RDC.
exim4.
eth0: timeout waiting for Tx RDC.
Starting internet superserver: inetd.
Starting OpenBSD Secure Shell server: sshd.
Starting NTP server: ntpd.
Starting NFS servers:eth0: timeout waiting for Tx RDC.
eth0: timeout waiting for Tx RDC.
eth0: timeout waiting for Tx RDC.
 nfsd mountd.
Starting deferred execution scheduler: atdset_rtc_time: can't update from 0 to 52
.
Starting periodic command scheduler: cron.
eth0: timeout waiting for Tx RDC.
 
Debian GNU/Linux 3.1 cat760 ttySC0
 
cat760 login:
コンパイルを通した後、一発で立ち上がったが
eth0: timeout waiting for Tx RDC.
eth0: timeout waiting for Tx RDC.
が多発するのとキー入力(シリアルコンソール)効かない。おそらく割り込みがenableになっていない。init_IRQ_intc2() あたりが怪しい気がする。
続きは明日。

2005年08月04日

CAT760

昨日の割り込みが入らない不具合はlinux-2.6.11付属のドライバ(実績あり)に戻したら動いた。あっさりloginまでできた。ということは arch/sh/kernel の下ではなくドライバ初期化のあたりに問題があるんかな。・・・決めつけると問題解決から遠のいてしまうけど。

CAT760

cardmgr動かん。ドライバの不備だろうな。
# cardmgr
cardmgr[1081]: watching 1 socket
cardmgr[1081]: could not adjust resource: IO ports 0x100-0x4ff: Function not implemented
cardmgr[1081]: could not adjust resource: IO ports 0x800-0x8ff: Function not implemented
cardmgr[1081]: could not adjust resource: IO ports 0xc00-0xcff: Function not implemented
cardmgr[1081]: could not adjust resource: memory 0xc0000-0xfffff: Function not implemented
cardmgr[1081]: could not adjust resource: memory 0xa0000000-0xa0ffffff: Function not implemented
cardmgr[1081]: could not adjust resource: memory 0x60000000-0x60ffffff: Function not implemented
cardmgr[1081]: could not adjust resource: IO ports 0xa00-0xaff: Function not implemented
とりあえずcardmgrのstraceの結果。
mknod("/var/run/cm-1063-1", S_IFCHR|0600, makedev(254, 0)) = 0    ← c,254,0 は PCMCIAデバイスドライバの事
open("/var/run/cm-1063-1", O_RDWR)      = 3
:
syscall_301(0x1)                        = 0x4
fcntl64(4, F_SETFD, FD_CLOEXEC)         = 0
syscall_303(0x4, 0x296d4850)            = 0
syscall_309(0x4, 0x438578, 0x34, 0x4000, 0x1d, 0x3, 0x16, 0x4, 0x7, 0x69, 0x4, 0xd7, 0, 0x7e90, 0x437718, 0) = 0x34
ioctl(3, DEVFSDIOC_SET_EVENT_MASK or DECODER_GET_STATUS, 0x437760) = -1 ENOSYS (Function not implemented)
:
writev(2, [{"cardmgr[1063]: could not adjust "..., 88}, {"\n", 1}], 2cardmgr[1063]: 
  could not adjust resource:  IO ports 0x100-0x4ff: Function not implemented
pcmciaデバイスドライバに対して、ioctl(DEVFSDIOC_SET_EVENT_MASK or DECODER_GET_STATUS) が -ENOSYS になる。その辺を追いかけてみるつもり

2005年08月05日

病院

肺炎はほぼ完治したが、体力が落ちて抗体が弱っている隙を狙ってウィルス君達が増殖したらしい。病院で炎症だと診断された。またか。


2005年08月08日

郵政民営化否決

各方面への影響を考えてえびめもではpoliticsな話題は敢えて書かないことにしていた。だが今日の参院中継を見ていて涙が出てきた。

賛否両論どちらの主張も熱いが、個人的見解では郵政民営化は流れとしては賛成である。電話事業を例にするまでもなく、旧電電公社からNTT化され、自由化された結果、日本テレコム、KDDI、平成電電など競争化されインターネットが3000円で自宅まで引ける世の中ができた。

郵便事業の最大の競争相手はインターネットである。はがき信書は残念ながら右肩下がりでボリュームの回復は無理だろう。推進派は「ダメになってからでは遅い」と言う。ぐずぐずしていたらネットの普及の爆発的速度に負けてしまうと。それはもっともであるし納得する人間も多いはず。だが民営化すれば解決するという理屈は通らないし、急げ急げで今日まで来たが、今の自民案では決まっていないことや棚上げされている点があまりにも多すぎて、大多数の賛成を得られなかった結果なのだろう。

私は、民間でやれることは民間で、という立場に賛成である。原始国家はなんでも国(=役人)がやってきたのかもしれないが、小ぶりな政府をめざす、役人の数を減らす、大きな流れとして国の仕事は中央サービスだけにする、およそ事業と呼べる物は、国の仕事から切り離した方がよいのではないかと考える。コンピュータにたとえればマイクロカーネル化と同じだ。FilesystemやNetworkなどのsubsystemは積極的に切り離し、自由参入させ、競争選択させる流れには一票。だが今の案では過疎地域への対応や分社化されたときの収益バランスの補いなど、想定に対する納得のいく説明、要するにプレゼンテーションが足りないのだ。


2005年08月09日

UNIXUSER 2005/9

http://www.unixuser.jp/magazine/2005/200509.html
もう出てるんですか?softbank社って締め切りから発行までが早いなぁ。
第1特集:俺のサーバー、白か玄 
  Part1 NASキットまっしぐら 
    ●編集部 
  Part2 白箱野郎 
    ●きんねこ 
  Part3 玄箱野郎 
    ●もぐの 
  Part4 小型サーバーを生かす分散コンパイル 
    ●えびはら 
何で名前が平仮名で名字だけなんだろ?それはまぁいいとして、sh4-linux環境でのdistccとpbuilderについて書かせていただきました。見本誌送ってくれないのかな。

原稿締め切り

次の原稿締め切りは8/13。今週中って事ですね。


2005年08月10日

サルサ

久々に名古屋で大きめなイベント
Eddie Torres & Nadia Torres が名古屋にも来ます。
【8/17】名古屋WS サルサティグレ@タイガーカフェ
 052-971-1031  名古屋市東区東桜1-9-22 NHK横
 
1ws&パーティー(エキジビジョンあり)
 WS 19:00〜21:00
 DJ 21:00〜24:00 当日のみ受付
     
パーティーはレッスン受講者フライヤー持参の方は¥2000w1d
パーティーのみの方は¥2500w1d 
 
■ワークショップは2時間で1WSです。広島、名古屋、東京共通
  予約料金¥5000 前日までに振込み 当日は振込の控えをお持ちください。
  振込み手数料は各自でご負担ください。
  当日料金¥7000 ただし人数により受けられない場合もありますのでご注意を。
ということだそうです。こんなbignameで2時間のWSで5千円なら良心的だと思います。
けれど私ebichanは 8/17〜19 (ひょっとしたら20日まで)東京出張で名古屋にいませんです。
昨年からことごとくTigreに嫌われてるな〜。まぁお仕事だから仕方ありません(苦笑)。

セミナー

CQ出版社様にて組み込みLinux系のセミナー開催します。
2005/8/18(木) SH-Linuxマイコン入門
http://it.cqpub.co.jp/eSeminar/Default.asp?NV=CCM&CI=E01-0044
2005/8/19(金) Linuxデバイスドライバ入門
http://it.cqpub.co.jp/eSeminar/Default.asp?NV=CCM&CI=E01-0045
どちらも講義は入門レベルです(hackingネタはofftimeに)。
よろしくお願いいたします。

サルサ

某月某日。某オズモール商店街のお祭りで「ぐるーぽまりぽーさ」さん達の
サクラ役を
ちがった、出演を拝見させていただきました。

おお。結構な人が集まってるじゃないですか。

何回か興業(?)してるだけあって慣れてきましたね。ノリノリでしたよ。練習がハードだったと言ってましたが、痩せた方おおいですね。((一部そうではない人物もいらっしゃったよーな))
彼女達、今度のLosVanVan(8/12ボトムライン)の前座をやります。新作だそうです。期待しましょう。

違う場所では太鼓のPFもやってました。こっちもかっこよかった。

2005年08月12日

健康

病院に行って最終的な検査。月曜日に結果が出て良好なら完治。市民病院でお世話になっていてなんだが、予約時間前に受け付けてもそこから1時間近く待たされ、100%カクジツに予約時間どおりには診察してもらえないのだからシステム変更したらどうでしょ?予約システム画面見てたら
08:30  5/5
09:00  4/5
09:30  5/5
10:00  1/5
ってなってて、30分に5人を看ることになってるみたい。それが無理だから予約時間から1時間待ちとかになるんちゃいますの?30分に4人にすればいいのに。「ケータイは電源OFF」って張り紙してあるし携帯呼び出しは無理としても、なんらかの呼び出しがあれば近所まで出かけられるんだけどなぁ。

でもまぁ、溜まってしまった本を読むのには絶好の機会なので、ここ数週間でかなりの本を読みあさることができました。(^^


2005年08月13日

LOS VANVAN

某月某日。名古屋にサルサバンド los vanvanが来た。こりゃ行かねばなるまい。

前座のグルーポ・マリポーサさん達の新作PF。先日の商店街でのPF披露と違って目が肥えた仲間達の前でのお披露目とあって緊張気味だったご様子。でも良かったですよ。vanvanの曲が良かったから?(joke)

ボトムラインのsalsa liveには過去に何回か出かけたことがあるが、最も人が多かったと思う。いやぁ良かった。彼らの前回の来日は大阪万博の年だったそうです。もう日本では見ることはできないかもしれません。

どんなライブにでかけても、その夜電気を消して布団に入ったあと、まだまだ耳の奥で音楽が鳴り続けてしまいます。


2005年08月16日

連休終了

お仕事再開。もうすぐ夏も終わるな。秋冬戦線に向けて(ビジネス的に)考えなきゃぁいかんことがたくさん出てきたな。

Linux-2.6割り込み

気晴らしに技術的な備忘録を書いてみる。
Linux-2.4と同じく割り込みはTopHalf(上半分)とBottomHalf(下半分)に分かれる。TopHalftはLinux-2.4と大差ない。
// linux-2.4
void parasw_interrupt(int irq_no, void *dev_id, struct pt_regs *regs){
}
だったものが
// linux-2.6
irqreturn_t parasw_interrupt(int irq_no, void *dev_id, struct pt_regs *regs){
  :処理
  return IRQ_HANDLED;
}
と変更するだけである。

ボトムハーフ

ボトムハーフ(下半分)を実行するメカニズムにはTaskletsとWorkqueueの2つの実装がある。Taskletsは起動が早いがatomicである必要がある(コンテキストの外で実行される=PIDを持たない状態)。一方Workqueueは起動までの遅延が大きいがWorkqueue専用スレッド(カーネル内部を走っているワーカー・プロセス)によって回収・実行されるのでsleepに入ることが許される。(LinuxDevicedriver 3rd edtion P275より)

瞬間最大風速の処理速度を求めるならTasklets、システム全体のパフォーマンスを優先するならWorkqueueという使い分けになるだろうか。

Tasklets

TaskletはLinuxのプロセススケジューラとは異なる独立したタスクスケジューリング機構で、ソフトウェア割り込みコンテキストと言うべき物である。Taslketsは一度きりしか実行されないしリピートもされない。SMPシステムにおいてはTaskletはスケジューリングを行ったCPUと同一のCPUで実行されることが保証される。そのためTophalf中でTaskletをスケジュールしても、Tophalfが終わるまではTaskletは実行されないので安全である。違うTaskletsは並列実行される。そのため複数のTaskletsを持つときにはレースを避けるためlockは必要になる。

Workqueue

ワークキューはカーネル内部を走っているワーカー・プロセスによって実行される。すなわちコンテキストの内側である。sleepに入ることが許されるが、依然として他のプロセス空間にデータを渡すことは出来ない(これはTaskletでも同じ事である)。


2005年08月17日

麻雀

HDDの奥底から懐かしい写真が出てきた。さすがにお顔は伏せさせていただきます。jpegのタグに残されていたデータによると、それは1997年10月9日。PM10時25分の出来事でした。(女流雀士のFさん・・だったかな。お名前失念しました。失礼)

『あ・・・ツモ。。』

げ。なんじゃこりゃ
これってなんだ・・四暗刻単騎か、役満か。麻雀を知る人間なら分かると思うけど、これで役満だけ(?)なのはなんだかすごい「もったいない」気持ちでいっぱいだ(こん時のルールは確かダブルは無しだったし)。こんなに苦しくて美しい四暗めったにない。待ちが非常に薄い上に、この状況だと鳥が浮いてて出やすそうなのに最後まで自らツモりきった所が恐ろしい。波が来ているとはこのことだ。

2005年08月18日

危うかった

先日の事だ。春日井市で真っ昼間に夕立。すごい雨だった。近所の川を通りかかったらすごいことになってた。

左が平常時。右がすごいことになってたとき。うちの方は災害とは無縁と思ってたけど甘かったらしい。

もらいもの

ただいま東京出張中です。その筋には人気のあるお店(らしい)のお菓子をお土産に頂きました。おいしそうです。ありがとうございます。賞味期限は今日中らしいですがこれをやっつけるには渋〜いお茶が必要なのでどっかでゲットしてきていただきます。

トレス父娘さんのイベントをやっているということなのですが予定が詰まってて(やっぱし)行けませんでした。


2005年08月22日

迷惑メール

Subject:  おめでとうございます【FREE確定】
 
100人中、18番目のお客様です。急な話ですが、貴方はたった今から
通常料金の発生する、優良※出会い確立85%を、最初の段階で
ポイントを気にせずに自由に無料体験できる権利を獲得した18番目の男性様です。
これにより思う存分出会いを満喫する事が出来ます。詳しくは下記をご覧下さい。
あなた日本語おかしすぎますって。

Linux-2.6

linux-2.4までは /etc/modules.conf に記述していたけれど linux-2.6では /etc/modprobe.conf に変更になった。debian sarge では modules.conf から modprobe.conf にtrnasするスクリプトがあった。
# zcat /usr/share/doc/module-init-tools/examples/generate- modprobe.conf.gz > generate-modprobe.conf
# chmod +x generate-modprobe.conf
# ./generate-modprobe.conf > /etc/modprobe.conf

2005年08月23日

イヤー・オブ・ザ・コーチ

「イヤー・オブ・ザ・コーチ」に48人 高校野球  2005年08月15日
 高校野球の育成と発展に貢献した指導者に贈られる「イヤー・オブ・ザ・コーチ」の表彰式が15日、
全国高校野球選手権大会第10日の第2試合前に兵庫県西宮市の阪神甲子園球場で行われ、全国の受賞
者48人(山梨は該当者なし)を代表し、7人が表彰を受けた。
http://www2.asahi.com/koshien/news/OSK200508150044.html
いやーおぶざこーち??
コーチの年って何だ? もちろん Coach of the yaer の間違いですよね。記事がtipoなのかなーと思ったけどgoogleで検索するとたくさん出てくるのでマジにそういう賞を作ったって事か。。もらいたくないな。

続き

朝日新聞社に直接尋ねた人がいた。
http://ameblo.jp/movie-mania/entry-10003547232.html
行動力がすごいな。新聞社の広報に罪はないと思うけど。

2005年08月25日

SH-Linux

tpkg(ツールチェイン・パッケージかな?)というのがあるらしいので使ってみる。ホストはdebian-sarge(i386)環境を使った。
# apt-get install toolchain-source dpkg-cross
# vi /etc/dpkg-cross/cross-compile    編集
crossbase = /usr                      であることを確認する
# cd /usr/src
# tpkg-make sh3-linux
# cd binutils-sh3-linux-2.15
# debuild
待つ。。。5分くらい
# ls ../binutils-sh3-linux_2.15-5*
../binutils-sh3-linux_2.15-5.dsc         ../binutils-sh3-linux_2.15-5_i386.changes
../binutils-sh3-linux_2.15-5.tar.gz      ../binutils-sh3-linux_2.15-5_i386.deb
../binutils-sh3-linux_2.15-5_i386.build
ふお!!すげえ!!!
じゃあ今度は。。。
# cd /usr/src
# tpkg-make sh4-linux
# cd binutils-sh4-linux-2.15
# debuild
待つ。。。5分くらい。
うお。すげぇ。できた。なるほどこんな事が出来るのか。。。

2005年08月26日

SH-Linux

SH4とSH3のクロスコンパイルサーバを共存させるために、distccを別ポートでも動かす。
# ls -l /usr/sh3-linux/distcc/bin/
 
lrwxrwxrwx  1 root root 21 Aug 25 23:41 ar -> /usr/bin/sh3-linux-ar
lrwxrwxrwx  1 root root 21 Aug 25 23:41 as -> /usr/bin/sh3-linux-as
lrwxrwxrwx  1 root root 22 Aug 25 23:42 c++ -> /usr/bin/sh3-linux-g++
lrwxrwxrwx  1 root root 22 Aug 25 23:42 cc -> /usr/bin/sh3-linux-gcc
lrwxrwxrwx  1 root root 22 Aug 25 23:41 g++ -> /usr/bin/sh3-linux-g++
lrwxrwxrwx  1 root root 22 Aug 25 23:42 gcc -> /usr/bin/sh3-linux-gcc
lrwxrwxrwx  1 root root 21 Aug 25 23:42 ld -> /usr/bin/sh3-linux-ld
lrwxrwxrwx  1 root root 21 Aug 25 23:42 nm -> /usr/bin/sh3-linux-nm
lrwxrwxrwx  1 root root 25 Aug 25 23:42 ranlib -> /usr/bin/sh3-linux-ranlib
lrwxrwxrwx  1 root root 22 Aug 25 23:42 sh3-linux-g++ -> /usr/bin/sh3-linux-g++
lrwxrwxrwx  1 root root 22 Aug 25 23:42 sh3-linux-gcc -> /usr/bin/sh3-linux-gcc
lrwxrwxrwx  1 root root 24 Aug 25 23:43 strip -> /usr/bin/sh3-linux-strip
設定ファイル
# cat /etc/default/distcc-sh3
STARTDISTCC="true"
ALLOWEDNETS="127.0.0.1 192.168.7.0/24"
PATH=/usr/sh3-linux/distcc/bin:$PATH
起動スクリプト
# cd /etc/init.d/
# diff -u distcc distcc-sh3
 PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
 DAEMON=/usr/bin/distccd
-NAME=distccd
-DESC="Distributed Compiler Daemon"
-DAEMON_ARGS="--pid-file=/var/run/$NAME.pid --log-file=/var/log/$NAME.log --daemon"
+NAME=distccd-sh3
+DESC="Distributed Compiler Daemon sh3"
+DAEMON_ARGS="-p 3633 --pid-file=/var/run/$NAME.pid --daemon"
 # please change those variables by overriding them in /etc/defaults/distcc
 ALLOWEDNETS="127.0.0.1"
 
 # Reads config file (will override defaults above)
-[ -r /etc/default/distcc ] && . /etc/default/distcc
+[ -r /etc/default/distcc-sh3 ] && . /etc/default/distcc-sh3
こんな感じか。あとは rc2.d/S20distcc-sh3 を追加。

distccクライアント側

export DISTCC_HOSTS="susa:3633"

SH-Linux (SH4 glibc-2.3.5)

SH4セルフ環境で glibc-2.3.5 のビルド。基本的にはkogiidenaさんのwikiの手順通り。
../sysdeps/unix/sysv/linux/sh/sh4/register-dump.h:182: error: structure has no member named `
sc_fpul'
distcc[15475] ERROR: compile ../sysdeps/unix/sysv/linux/segfault.c on susa failed
make[3]: *** [/root/build/glibc-2.3.5/build-tree/sh4-libc/debug/segfault.os] Error 1
make[3]: Leaving directory `/root/build/glibc-2.3.5/build-tree/glibc-2.3.5/debug'
make[2]: *** [debug/subdir_install] Error 2
make[2]: Leaving directory `/root/build/glibc-2.3.5/build-tree/glibc-2.3.5'
make[1]: *** [install] Error 2
make[1]: Leaving directory `/root/build/glibc-2.3.5/build-tree/sh4-libc'
make: *** [/root/build/glibc-2.3.5/stamp-dir/install_libc] Error 2
 
real    511m59.113s
user    362m4.950s
sys     51m40.330s
うお。先日のgccの時と同じエラー(struct sigcontext)だ。また511分やり直しか〜。。

SH-Linux (SH3 gcc-3.4.3)

こっちはsh3でのgcc-3.4.3のセルフビルド
if [ -f stmp-dirs ]; then true; else touch stmp-dirs; fi
/root/build2/gcc-3.4/gcc-3.4-3.4.3/build-ebihara/gcc/xgcc -B/root/build2/gcc-3.4/gcc-3.4-3.4.3/build-ebihara/
gcc/ -B/usr/sh3-unknown-linux-gnu/bin/ -B/usr/sh3-unknown-linux-gnu/lib/ -isystem /usr/sh3-unknown-linux-gnu/
include -isystem /usr/sh3-unknown-linux-gnu/sys-include -O2  -DIN_GCC    -W -Wall -Wwrite-strings -Wstrict-pr
ototypes -Wmissing-prototypes -Wold-style-definition  -isystem ./include  -fpic -DNO_FPSCR_VALUES -g -DHAVE_G
THR_DEFAULT -DIN_LIBGCC2 -D__GCC_FLOAT_NOT_NEEDED  -I. -I -I../../src/gcc -I../../src/gcc/ -I../../src/gcc/..
/include   -DL_muldi3 -c ../../src/gcc/libgcc2.c -o libgcc/./_muldi3.o
../../src/gcc/libgcc2.c: In function `__muldi3':
../../src/gcc/libgcc2.c:529: internal compiler error: Segmentation fault
Please submit a full bug report,
with preprocessed source if appropriate.
See URL:http://gcc.gnu.org/bugs.html for instructions.
For Debian GNU/Linux specific bug reporting instructions,
see URL:file:///usr/share/doc/gcc-3.4/README.Bugs.
make[2]: *** [libgcc/./_muldi3.o] Error 1
make[2]: Leaving directory `/root/build2/gcc-3.4/gcc-3.4-3.4.3/build-ebihara/gcc'
make[1]: *** [stmp-multilib] Error 2
make[1]: Leaving directory `/root/build2/gcc-3.4/gcc-3.4-3.4.3/build-ebihara/gcc'
make: *** [all-gcc] Error 2
xgccが Segmentation fault か。。。困ったな。ソース見るか。
どうも union の
 const union some a = {.hoge = fuga};
という構文がコンパイラ内部エラーになるようだ。適当に直してみる。
src/gcc/libgcc2.c において
__muldi3 (DWtype u, DWtype v)
{
  DWunion uu;
  DWunion vv;
 
  uu.ll=u;
  vv.ll=v;
__negdi2 (DWtype u)
{
  DWunion uu;
  DWunion w;
 
  uu.ll = u;
  w.s.low = -uu.s.low;
  w.s.high = -uu.s.high - ((UWtype) -uu.s.low > 0);
 
  return w.ll;
}
以下同様に
__lshrdi3
__ashldi3
__ashrdi3
__cmpdi2
__mulvDI3
__ffsdi2
__clzdi2
__clzDI2
__paritydi2
を同じ具合にテッテー的に直してったら通った。良かった。

あ。ただ厳密に言うと初期化式を変えてしまった結果、uninに含まれる他のメンバ変数がゼロ埋めされなくなったから正常に動作しなくなっているかも。できあがった gcc-3.4-3.4.3/src/gcc/libgcc2.c がコレ。使い方は

# dpkg-source -x gcc-3.4_3.4.3-13.dsc
# cd gcc-3.4-3.4.3/
# time dpkg-buildpackage -us -uc
でビルドを開始し、ソースを展開してコンパイルが始まった頃の
絶妙なタイミングを見計らって
# cp libgcc2.c src/gcc/
とコピーする。笑。

SH-Linux (sh3 gcc-3.4.3) 最終章

  AR_FOR_TARGET="ar" \
  AR_CREATE_FOR_TARGET="ar  rc" \
  AR_EXTRACT_FOR_TARGET="ar  x" \
  AR_FLAGS_FOR_TARGET="" \
  CC="gcc" CFLAGS="-g -O2 -W -Wall -Wwrite-strings -Wstrict-prototypes -Wmissing-prototypes -pedantic -Wno-lo
ng-long  " \
  BUILD_PREFIX="" \
  BUILD_PREFIX_1="loser-" \
  LANGUAGES="" \
  LIBGCC2_CFLAGS="-O2  -DIN_GCC    -W -Wall -Wwrite-strings -Wstrict-prototypes -Wmissing-prototypes -Wold-st
yle-definition  -isystem ./include  -fpic -DNO_FPSCR_VALUES -g -DHAVE_GTHR_DEFAULT -DIN_LIBGCC2 -D__GCC_FLOAT
_NOT_NEEDED  "  \
  MULTILIB_CFLAGS="" T= crtbeginT.o
make[3]: Entering directory `/root/build2/gcc-3.4/gcc-3.4-3.4.3/build-ebihara/gcc'
make[3]: Leaving directory `/root/build2/gcc-3.4/gcc-3.4-3.4.3/build-ebihara/gcc'
/usr/bin/install -c -m 644 ./libgcc.a /usr/lib/gcc/sh3-unknown-linux-gnu/3.4.4/
ranlib /usr/lib/gcc/sh3-unknown-linux-gnu/3.4.4/libgcc.a
ranlib: /root/build2/gcc-3.4/gcc-3.4-3.4.3/build-ebihara/gcc/libgcc_s.so.1: version `GLIBC_2.0' not found (required by /usr/lib/libbfd-2.13.90.0.4-multiarch.so)
無事に make が終わり、 make install しようとしたときに GLIBC_2.0 が無いというエラー。まいった。結局以下のサイトを参考にして preload で対応した。
http://d.hatena.ne.jp/tera-p/20040726#p3
やったこと
# cd /lib/
# cp libgcc_s.so.1 libgcc_s_glibc20.so.1
# echo /lib/libgcc_s_glibc20.so.1 >> /etc/ld.so.preload
# cd /usr/lib/gcc-lib/sh3-linux/3.0.4
# rm libgcc_s.so
# ln -s /lib/libgcc_s_glibc20.so.1 libgcc_s.so.1
 
# cd ~/build2/gcc-3.4/gcc-3.4-3.4.3/build-ebihara
# make all-gcc
# make install
$ gcc -v
Reading specs from /usr/lib/gcc/sh3-unknown-linux-gnu/3.4.4/specs
Configured with: ../src/configure -v --enable-languages=c,c++ --prefix=/usr --libexec
dir=/usr/lib --with-gxx-include-dir=/usr/include/c++/3.4 --enable-shared --with-syste
m-zlib --enable-nls --without-included-gettext --program-suffix=-3.4 --enable-__cxa_a
texit --enable-libstdcxx-allocator=mt --enable-clocale=gnu --enable-libstdcxx-debug -
-disable-werror
Thread model: posix
gcc version 3.4.4 20050314 (prerelease) (Debian 3.4.3-13)
これで distcc クライアント化することができる。よっしゃぁ。

2005年08月27日

SH-Linux

CAT WikiにDebianSarge_sh3版 進行中

というページを作りました。応援よろしくお願いします。

SH-Linux (sh3)

いよいよ libc6 に行くのか。いやまだ早い。現段階のgcc-3.4はgcc-3.0.4でmake all-gcc しただけの物なのでもう一度正しく作り直さないといかんよなぁ。libc6は気が遠くなりそうだ。いずれにしてもlibc6を作り直した後に再び全部やりなおしになるはずだけど。

SH-Linux (sh4)

sh4版の libc6 はノーエラーで出来た。kogiidenaさんに感謝!
# cd glibc-2.3.5/
# time dpkg-buildpackage -uc -us
real    594m47.948s     ← 9.9時間?あれおかしいな。もっとかかったはずだけど。
user    453m19.160s
sys     59m43.730s
# ls ../*.deb
../glibc-doc_2.3.5-1_all.deb  ../libc6-pic_2.3.5-1_sh4.deb   ../locales_2.3.5-1_all.deb
../libc6-dbg_2.3.5-1_sh4.deb  ../libc6-prof_2.3.5-1_sh4.deb  ../nscd_2.3.5-1_sh4.deb
../libc6-dev_2.3.5-1_sh4.deb  ../libc6_2.3.5-1_sh4.deb

2005年08月28日

SH-Linux

ultracatとlandyで競争してみた。テーマはbinutils-2.15のビルド。
Landy (LANDISK)
CPU: SH4-266MHz
MEMORY: 64MByte
HDD: 3.5inch UDMA接続(PCI)
Ultracat2 (CAT709)
CPU: SH3-117MHz
MEMORY: 32Byte
HDD: 2.5inch PIO接続(ISA似の自作I/F)
real 149m36.470s
user 133m33.600s
sys 14m23.910s
real 344m15.544s
user 289m16.080s
sys 39m7.360s
実時間で2.3倍しかない。LANDISKとCAT709は各スペックが実に倍くらい違うのに、クロック差の2.2倍っくらいしか違わない。ultracat君、かなり頑張ってるじゃないか!

2005年08月29日

みはるぞう

みはるぞうによる8月の気温計測

最近は最高気温が32度くらいになってきた。

SH-Linux(glibc-2.3)

dpkg-crossでglibcをビルドすれば速くできるはず・・・kogiidenaさんは成功しているという心強いコメントを頂戴したのでトライしたけどうちの環境だとイマイチ上手くできない・・・
# dpkg-source -x glibc_2.3.5-1.dsc
# cd glibc-2.3.5/
# dpkg-buildpackage -uc -us -ash4
:略
make[3]: Entering directory `/root/build/glibc-2.3.5/glibc-2.3.5/build-tree/glibc-2.3.5/csu'
gawk -f ../scripts/gen-as-const.awk ../linuxthreads/sysdeps/pthread/nptl-struct-pthread.sym \
| sh4-linux-gcc -S -o /root/build/glibc-2.3.5/glibc-2.3.5/build-tree/sh4-libc/nptl-struct-pthread.hT3 -std=gnu99 -O2 -Wall -Winline
-Wstrict-prototypes -Wwrite-strings -fstrict-aliasing -g -pipe      -I../include -I. -I/root/build/glibc-2.3.5/glibc-2.3.5/build-tre
e/sh4-libc/csu -I.. -I../libio  -I/root/build/glibc-2.3.5/glibc-2.3.5/build-tree/sh4-libc -I../sysdeps/sh/elf -I../linuxthreads/sysd
eps/unix/sysv/linux/sh -I../linuxthreads/sysdeps/unix/sysv/linux -I../linuxthreads/sysdeps/pthread -I../sysdeps/pthread -I../linuxth
reads/sysdeps/unix/sysv -I../linuxthreads/sysdeps/unix -I../linuxthreads/sysdeps/sh -I../sysdeps/unix/sysv/linux/sh/sh4 -I../sysdeps
/unix/sysv/linux/sh -I../sysdeps/unix/sysv/linux -I../sysdeps/gnu -I../sysdeps/unix/common -I../sysdeps/unix/mman -I../sysdeps/unix/
inet -I../sysdeps/unix/sysv -I../sysdeps/unix/sh -I../sysdeps/unix -I../sysdeps/posix -I../sysdeps/sh/sh4/fpu -I../sysdeps/sh/sh4 -I
../sysdeps/sh -I../sysdeps/wordsize-32 -I../sysdeps/ieee754/flt-32 -I../sysdeps/ieee754/dbl-64 -I../sysdeps/ieee754 -I../sysdeps/gen
eric/elf -I../sysdeps/generic -nostdinc -isystem /usr/lib/gcc/sh4-linux/3.4.4/include -isystem /root/build/glibc-2.3.5/glibc-2.3.5/d
ebian/include -D_LIBC_REENTRANT -include ../include/libc-symbols.h       -DHAVE_INITFINI -x c - \
        -MD -MP -MF /root/build/glibc-2.3.5/glibc-2.3.5/build-tree/sh4-libc/nptl-struct-pthread.h.dT -MT '/root/build/glibc-2.3.5/gl
ibc-2.3.5/build-tree/sh4-libc/nptl-struct-pthread.h.d /root/build/glibc-2.3.5/glibc-2.3.5/build-tree/sh4-libc/nptl-struct-pthread.h'
In file included from /root/build/glibc-2.3.5/glibc-2.3.5/debian/include/linux/config.h:4,
                 from /root/build/glibc-2.3.5/glibc-2.3.5/debian/include/asm-i386/bitops.h:8,
                 from /root/build/glibc-2.3.5/glibc-2.3.5/debian/include/asm/bitops.h:7,
                 from /root/build/glibc-2.3.5/glibc-2.3.5/debian/include/linux/bitops.h:4,
                 from /root/build/glibc-2.3.5/glibc-2.3.5/debian/include/asm-i386/cpufeature.h:10,
                 from /root/build/glibc-2.3.5/glibc-2.3.5/debian/include/asm/cpufeature.h:7,
                 from /root/build/glibc-2.3.5/glibc-2.3.5/debian/include/asm-i386/processor.h:16,
                 from /root/build/glibc-2.3.5/glibc-2.3.5/debian/include/asm/processor.h:7,
                 from /root/build/glibc-2.3.5/glibc-2.3.5/debian/include/asm-i386/elf.h:10,
                 from /root/build/glibc-2.3.5/glibc-2.3.5/debian/include/asm/elf.h:7,
                 from ../sysdeps/unix/sysv/linux/sh/sys/procfs.h:32,
                 from ../nptl/../nptl_db/thread_db.h:29,
                 from ../nptl/descr.h:37,
                 from :6:
/root/build/glibc-2.3.5/glibc-2.3.5/debian/include/linux/autoconf.h:7:52: x86_64-linux/i386-linux/linux/autoconf.h: No such file or
directory
In file included from /root/build/glibc-2.3.5/glibc-2.3.5/debian/include/asm/processor.h:7,
                 from /root/build/glibc-2.3.5/glibc-2.3.5/debian/include/asm-i386/elf.h:10,
                 from /root/build/glibc-2.3.5/glibc-2.3.5/debian/include/asm/elf.h:7,
                 from ../sysdeps/unix/sysv/linux/sh/sys/procfs.h:32,
                 from ../nptl/../nptl_db/thread_db.h:29,
                 from ../nptl/descr.h:37,
                 from :6:
/root/build/glibc-2.3.5/glibc-2.3.5/debian/include/asm-i386/processor.h:66: error: `CONFIG_X86_L1_CACHE_SHIFT' undeclared here (not
in a function)
/root/build/glibc-2.3.5/glibc-2.3.5/debian/include/asm-i386/processor.h:66: error: requested alignment is not a constant
make[3]: *** [/root/build/glibc-2.3.5/glibc-2.3.5/build-tree/sh4-libc/nptl-struct-pthread.h] Error 1
make[3]: Leaving directory `/root/build/glibc-2.3.5/glibc-2.3.5/build-tree/glibc-2.3.5/csu'
make[2]: *** [csu/subdir_lib] Error 2
make[2]: Leaving directory `/root/build/glibc-2.3.5/glibc-2.3.5/build-tree/glibc-2.3.5'
make[1]: *** [install] Error 2
make[1]: Leaving directory `/root/build/glibc-2.3.5/glibc-2.3.5/build-tree/sh4-libc'
make: *** [/root/build/glibc-2.3.5/glibc-2.3.5/stamp-dir/install_libc] Error 2
make: Leaving directory `/root/build/glibc-2.3.5/glibc-2.3.5'
う〜ん、なんでglibc-2.3.5/debian/include/asm-i386/processor.h:66を見に行って(この時点ですでにおかしい)、 CONFIG_X86_L1_CACHE_SHIFT を探すんだろう。なにか勘違いしてるかなぁ。。

問題は CONFIG_X86_L1_CACHE_SHIFT が未定義って所じゃなくて、debian/ 作業ディレクトリ下に include/asm-i386 が展開されてしまう点だと思う。

SH-Linux

過去めもにgcc-3.2.3が成功した話は載ってた。

SH-Linux

すばらしいっ。kogiidenaさんのアドバイスに従ったところできた!ありがとうございます。
# cd glibc-2.3.5
# dpkg-buildpackage -uc -us -ash3
:略
Running debhelper for libc6-dev
dh_testroot
dh_installdirs -plibc6-dev
dh_install -plibc6-dev
cp: cannot stat `./debian/tmp-libc/usr/lib/librpcsvc.a': No such file or directory
dh_install: command returned error code 256
make: *** [/root/build/glibc-2.3.5/glibc-2.3.5/stamp-dir/binaryinst_libc6-dev] Error 1
make: Leaving directory `/root/build/glibc-2.3.5/glibc-2.3.5'
 
real    83m52.613s
user    63m49.814s
sys     7m8.016s
 
# ls ../*.deb
../glibc-doc_2.3.5-1_all.deb  ../libc6_2.3.5-1_sh3.deb  ../locales_2.3.5-1_all.deb
あ。おしいっ! libc6-dev が無いや。rules追いかけるか。。
とりあえず debian/tmp-libc/ を tar で固めて保存しておくことにする。

2005年08月30日

検問クリアっ!

最近こんぴうたの話ばっかりで面白くないので。。。
http://www.pya.cc/pyaimg/pimg.php?imgid=17439
これ面白かった。

SH-Linux (glibc-2.3 クロスビルド)

kogiidenaさんに手伝っていただいたおかげで無事出来ました。以下にまとめ。
展開
 # dpkg-source -x glibc_2.3.5-1.dsc
 # cd glibc-2.3.5
 
編集
 # vi debian/sysdeps/sh3.mk   (sh4.mk からコピー)
 
 nptl_extra_cflags += -O2
                   ↑+=とする
 
編集
 # vi debian/sysdeps/linux.mk  (21行目付近) 
 
 LINUX_SOURCE = /usr/sh3-linux   ← コメントをはずす変更
 ifndef LINUX_SOURCE
   LINUX_HEADERS := /usr/include
 else
   LINUX_HEADERS := $(LINUX_SOURCE)/include
 endif
 
編集
 # vi debian/debhelper.in/libc-dev.install
 
 debian/tmp-libc/usr/bin/rpcgen usr/bin      この2行を削除する
 debian/tmp-libc/usr/lib/librpcsvc.a usr/lib
 
ビルド実行
 # time dpkg-buildpackage -uc -us -ash3
 
Celeron2.4Gのクロスで1〜2時間
-有用なヒント1
-有用なヒント2
ありがとうございました (^-^)

SH-Linux (gcc-3.4 セルフビルド)

いろいろやってて頭の中混乱してくるけど、今度はSH3 dodes環境から gcc-3.4 へ移行する作業。gcc-3.4.3のセルフビルド。
cc  -c -DHAVE_CONFIG_H -g -O2  -I. -I../../src/libiberty/../include  -W -Wall -Wtraditional -pedantic ../../s
rc/libiberty/strerror.c -o strerror.o
../../src/libiberty/strerror.c:694: error: conflicting types for 'strerrno'
../../src/libiberty/../include/libiberty.h:178: error: previous declaration of 'strerrno' was here
../../src/libiberty/strerror.c:694: error: conflicting types for 'strerrno'
../../src/libiberty/../include/libiberty.h:178: error: previous declaration of 'strerrno' was here
../../src/libiberty/strerror.c: In function `strtoerrno':
../../src/libiberty/strerror.c:743: error: argument "name" doesn't match prototype
../../src/libiberty/../include/libiberty.h:182: error: prototype declaration
make[3]: *** [strerror.o] Error 1
make[3]: Leaving directory `/root/build/gcc-3.4/gcc-3.4-3.4.3/build/libiberty'
make[2]: *** [all-libiberty] Error 2
make[2]: Leaving directory `/root/build/gcc-3.4/gcc-3.4-3.4.3/build'
s=`cat status`; rm -f status; test $s -eq 0
make[1]: *** [stamps/05-build-stamp] Error 1
make[1]: Leaving directory `/root/build/gcc-3.4/gcc-3.4-3.4.3'
make: *** [stamps/05-build-stamp] Error 2
エラー箇所を見てみると
const char *
strerrno (errnoval)
  int errnoval;
{
う〜む。 cc の -pedantic オプションで怒られているようだ。俺のccは warning じゃなくて fatal になるらしい。どっかで gcc を手に入れてこないと先に進まないな。。あるいは環境変数でごまかせるかな。。

2005年08月31日

SH-Linux (SH3 libstdc++6とか)

glib-2.3.5もgcc-3.4もコンパイル&導入が出来た。ただ、dodes版でコンパイルされたC++プログラムと、gcc-3.4でコンパイルしたC++プログラムの共存はうまくいかないらしい。libgccが共存できないみたい。これに関しては先輩諸兄のblogにも記述を発見した。
gcc-3.4に付属のlibgccを導入すると、perlやapt-get など libstdc++3にlinkしてあるコマンドはコトゴトク動かない。かといって 旧 libgcc (リネイムして保存しといたやつ)を preload すると、今度は新しくコンパイルしたC++プログラムが動かなくなる。
1. 特定のコマンドに的を絞ってpreloadする方法ってあったけ?
    (問題児を発見する毎にラッパーシェルを書くのもなぁ。。)
2. あるいは旧dodoes版のコマンドに対してprelinkで旧libgccをくっつけちまうか?(できるのかな)
といった対応かな。。。とりあえずperlを新しくリコンパイルすれば放置できる問題な気もする・・・