Skip to main content

ログ取得ツール

メモ:gccで不要な関数をリンクしない方法

普通はリンカはライブラリ(.a)になっている場合にはいらないファイル(.o)ごと消してくれる。これを関数単位で消してもらおう、という話。 -ffunction-sections -Wl,--gc-sectionsらしい。ここ(radiumsoftware.com)より。 しかし、消えない。Oops! 使っていないfunc2()が残ってしまう。 #include <stdio.h> int func1(){ printf(“Hello, World!\n”); } int func2(){ printf(“Good-bye, World!\n”);} int main(int argc, char **argv){ func1(); return 0; }

## gcc -ffunction-sections -Wl,–gc-sections test.c

## objdump -d a.out

:(略) 08048338 : 8048338: 55 push %ebp 8048339: 89 e5 mov %esp,%ebp 804833b: 83 ec 08 sub $0x8,%esp 804833e: c7 04 24 e4 83 04 08 movl $0x80483e4,(%esp,1) 8048345: e8 1e ff ff ff call 8048268 <_init+0x38> 804834a: c9 leave 804834b: c3 ret 0804834c : 804834c: 55 push %ebp 804834d: 89 e5 mov %esp,%ebp 804834f: 83 ec 08 sub $0x8,%esp 8048352: c7 04 24 f3 83 04 08 movl $0x80483f3,(%esp,1) 8048359: e8 0a ff ff ff call 8048268 <_init+0x38> 804835e: c9 leave 804835f: c3 ret :(略) しかしながら、-ffunction-sectionsは機能していて、以下のように関数毎にセクションに分かれてコードも正しく配置されている。

## gcc -c -ffunction-sections test.c

## objdump -d test.o

test.o: file format elf32-i386 Disassembly of section .text: Disassembly of section .text.func1: 00000000 : 0: 55 push %ebp 1: 89 e5 mov %esp,%ebp 3: 83 ec 08 sub $0x8,%esp 6: c7 04 24 00 00 00 00 movl $0x0,(%esp,1) d: e8 fc ff ff ff call e <func1+0xe> 12: c9 leave 13: c3 ret Disassembly of section .text.func2: 00000000 : 0: 55 push %ebp 1: 89 e5 mov %esp,%ebp 3: 83 ec 08 sub $0x8,%esp 6: c7 04 24 0f 00 00 00 movl $0xf,(%esp,1) d: e8 fc ff ff ff call e <func2+0xe> 12: c9 leave 13: c3 ret Disassembly of section .text.main: 00000000 : 0: 55 push %ebp 1: 89 e5 mov %esp,%ebp 3: 83 ec 08 sub $0x8,%esp 6: 83 e4 f0 and $0xfffffff0,%esp 9: b8 00 00 00 00 mov $0x0,%eax e: 29 c4 sub %eax,%esp 10: e8 fc ff ff ff call 11 <main+0x11> 15: c9 leave 16: c3 ret してみると、リンカが悪いのかな?? binutilsのバージョン上げてみようかな。 (追記) 2004-02-03 13:26 -staticつけたら消えた。

Jack the what?

ripとcutってだいぶ違うんだろうな。それはともかく。 ペーパークラフトの作成も簡単なコンシューマ向けカッティングマシン発表(mycom.co.jp)。

グラフテックは、A4プリンタと同程度いのサイズ・価格を実現したコンシューマ向けカッティングマシン「Craft ROBO CC100-20」を発表した。価格は49,800円で3月6日から全国家電量販店などで販売される。
(中略)
家庭はもちろん、オフィス。教育現場などでの需要を見込んでいるという。

こういうのをコンシューマ向けに売るか。でもちょっと欲しいと思わせるのは確かだ。バカ売れ間違いなし。

仕事場の選択

ワイヤレスで仕事をするなら山の頂上?! イギリス BTが調査(mycom.co.jp)。

「イギリスの労働者は、会社の机の上で仕事をしない方が幸せかつ生産性が上がると考えている」イギリスの通信会社 BTはそのような調査結果を発表した。
(中略)
リラックスできて、仕事と私生活のバランスを取ることができるその場所としては、37%がビーチを、17%が公園や裏庭を挙げ、18%はなんと山の頂上やヨットをその場所として挙げている。
(中略)
無線LANのメリットを強調、同社のサービスする無線LANサービス「BT Openzone」をあわせてアピールしている。

いろいろ試した挙句、なにげに「やっぱり自宅」だったりするんだよね。近場で、多摩川の土手とか。でもやっぱり太陽の下だと画面が見にくいというのがあったりする。でも自宅に籠っていてもただ快適なだけで、おもしろいことはあんまり、ない。

今朝はマウスについてほんの少しだけ言わせていただきたい

私がマウスをあまり買わなくなって久しい。DEXXAのミニマウスが理想形であるのに売っている店が少なくなり、しかもDEXXAのボタンが効かなくなりやすいという状況でもあり、理想のマウスを求めて放浪していたわけだが、KensingtonがDEXXAのコピー品(?)を売ってくれたおかげで収束したのだ。また、DEXXAのクリックも個体差によるものらしく、何台か買って最適品を得ることができた(会社で使っているもの)。 ところが最近、自宅用のIBMのミニマウスの調子に疑問を感じた。なんていうか…一番重要なものが欠けてきたような気がするのだ。具体的に言うと、「ホイールが逆流する」。これは安いマウスに多い欠陥である。私はこのような欠陥をいくつも見ている。上方向だけ逆流するとか、下方向だけ逆流するとか、果ては両方向ともホイールの制御がムチャクチャになるものまで。必要なだけスクロールさせたらぴたぴたっとホイールを止められるのが理想形なのである。ちょっと止めると逆流したり、動き出しで逆流されると萎える。最近ではホイーリング(?)はポインティングやクリックよりも重要であると言える。 今回のIBMのミニマウスの場合は調子は悪くなかったからずっと使ってきたのだが、ついに上方向へのホイールが逆流するようになった。上方向に転がすと、最後に下にカツンと2〜3ホイールぶん動いてしまう。DEXXAかKensingtonに交換だ。ThinkPad色がけっこう気に入っていたのに。 ミニマウスでホイールをちゃんと作っているものは少ない。少なくとも私がたくさん買っていた頃はほとんどなかった。だからって大きなマウスにすると私の場合はポインティングがうまくいかない。 あと、これはけっこう前から気になっていたんだけど、強くホイールするとクリックになっちゃうことってない? それも、中クリックなら自分の操作ミスだってわかるんだけど、なぜか左クリックになっちゃうんだよね。だから強くホイールするときはリンクがない部分にカーソルを置いておくという生活の知恵が必要になっている。Linux/XFree86のせいかな?? 左ボタンに全く触れていないとも言いきれないんだけど、カチっとクリックするまでは全然してないつもりなんだけど。 (追記) 2004-02-03 24:05 自宅に帰って懐からKensingtonのDEXXAコピーを取り出して使ってみたが、左クリックが生成される現象もなく、ホイールも逆流しない。偉い>Kensington

50メートル

USBケーブルを50メートルに延長できるエクステンダー(itmedia.co.jp)。

アイ・ビー・エス・ジャパンは2月2日、USBケーブルを最大50メートルまで延長できるエクステンダーを発売した。

50メートルの長さを示す表現は「ポポフでも21秒かかる」だ。そんな長さまでUSBでつなげればうれしい人もいるだろう。Ethernetケーブルを使うということだが、これはケーブルだけで、「USB over Ethernet」ではないみたいだ。 私としてはUSB over Ethernetのほうが欲しいな。EthernetのハブにUSBポートがついてて、そのUSBポートにMACアドレスがついている。むしろIPアドレスのほうがいいかな。それで、ホスト側のソフトでUSBに見せかけるのね。

自動ダイエット

特に何をしているわけでもないのに、体重・体脂肪率とも減ってきている。なんか、体重や体脂肪率だけ見ると健康体になってきているようでもある。 過度のストレスか、あるいは白血病やガンかも…ということが一瞬頭をよぎったが、ストレスと言われても思い当たることが全くない(だってバカだもん♥)。単に自宅で一人で飲むときにビールじゃなくて焼酎にした、というのが効いているのかもしれないし、焼魚を食べるようになったからかもしれない。特に「夜中サッカーを見ながらビール→寝入る→朝起きて会社でぼんやり」というパターンがなくなったのが大きそうな気がする。タニタの体脂肪計がだんだん壊れてきているという説と地球の質量が減ってきて重力に影響が出ているという説も捨てがたい(まさか、ね)。 私は足腰の鍛練に自宅で毎日四股(しこ)を踏んでいます。会社では椅子に座らずにずっと蹲踞(そんきょ)しています。毎朝公園でハカを踊っています。一日に玄米4合と味噌と少しの野菜を食べていて雨にも風にも負けません…そんなことをしなくても、なんとなく自動的に健康になっていくもんなのかもしれない。これは発見だ。 ところで1日4合ってかなり多いな。そんなに食ったら太らないかな。

バージョンアップ

赤ちゃんに「ジュニア」ならぬ「Ver2.0」と命名 (cnn.co.jp)。バージョンアップなのか…まあ、そうなのかもしれないけど。

「サミー・デイビス・ジュニア」のように、欧米で生まれた男の子に父親の名前をそのままつけて「ジュニア」や「2世」とするのは良くある話しだが、このコンピューター時代には今後、ジュニアならぬ「Ver2.0」とつけられるソフトウエア的名称の子供が増えるかもしれない?

なんとなく「かわいそうに」という感想しか出てこない。まだ西暦のほうがよかったんではないかなぁ。XPとかつけられたら泣くよ。 妻の説得を懸命に続け、出産1週間前にやっとOKをもらったということだけど、拒否しようよ>奥さん

SuperBowl XXXVIII後半

キックオフ直前、観客の一人がグラウンドへ。選手がタックルして止めたらしい(笑)。もっとアップで映せ。 (追記) 2004-02-02 10:49 NE 14-10 CARという状況。気を取り直してキックオフ。#4 Kaseyのキック。エンドゾーン付近からのNEのリターンは自陣25ヤードで止まった。 NEの攻撃。ランx2(5ヤード。どっちもA.Smithかな?)、ショットガンからスクランブルかと思いきやショートパスを押し投げた。1st down届かず。河口さん「ナイスタックル」。ギリギリで止めて押し戻した。パントへ。またバウンドが良くなく、リターンはしないのにCARは自陣42ヤードから。 (追記) 2004-02-02 10:57 CARの攻撃。ラン(左に流れて2ヤード)、S.Davisのラン(12ヤード)で1st downと思いきや、オフェンスがHoldingを取られた。ランが止まったがまたイエロー(ディフェンス。オフサイド)。ショートパスとセカンドエフォートで1st downを取った。タックルを1つかわした後に低いタックルをジャンプでかわした。ショートパス(6ヤード)、10ヤードくらいのパスはインコンプリートの判定。NEの選手(#26)はファンブルだと思って捕って走るも認められず。ロングパス失敗で4th and 4、パントへ。これもいいパントでフェアキャッチ、NEは自陣ゴール前8ヤードくらいからの攻撃。 Delhommeは前半の最後にパスが通り出して調子を取り戻したようだ。ちょっと低くて捕りにくいのが多いけど。 (追記) 2004-02-02 11:04 NEの攻撃。パス失敗、中央へのショートパス(5ヤード)、右へのショートパス+ランアフターキャッチ(7ヤード)で1st down。#32 A.Smithのラン(4ヤード)、A.Smithのラン(3ヤード)、K.Faulkのラン(3ヤード)でチェーン。4th and inches。パントを選択。このパントは良かった。CARの自陣20ヤードで止まる。しかしイエロー(リターンチーム、Illegal Block)。 (追記) 2004-02-02 11:09 CARの攻撃。自陣10ヤードから。S.Davisのラン(中央。2ヤード)、S.Davisのラン(5ヤード)、パスを投げられずコケてファンブルかと思いきやダウンの判定。地面にボールがついて手から離れた。河口さん「地面はファンブルを起こすことはできない」だって。なんか言い方が名言っぽい(笑) パントでホールディングかなこれは。 (追記) 2004-02-02 11:18 NEの攻撃は自陣32ヤードから。残り3:50。パス通って45ヤード付近。リプレイを見るといろいろすごい感じ。イエローフラッグ(ディフェンス#77オフサイド?)。ロングパスは#30にカットされて失敗。T.Bradyはプレッシャーを受けていた。A.Smithのラン(4ヤード)。ランプレーはNEがかなり優位(CARのラン攻撃はいまだほとんど何もできていない)。またA.Smithのラン(10ヤードくらい)で1st down。ショットガンからショートパス(8ヤード)。T.Bradyのショートパスの精度は全く衰えず安定している。K.Faulkのラン(4ヤード)はイエロー(オフェンスHolding)。中距離のパス通ってランアフターキャッチもありゴール前7ヤードまで進む。A.Smithのラン(3ヤード)。ここで第3Q終了。 (追記) 2004-02-02 11:23 第4Q。左サイドエンドゾーン内でのパスキャッチは認められず(アウトオブバーンズ)。しかしディフェンスのホールディングがあってハーフディスタンス。ゴール前残り2.5ヤードで1st down。ここをA.Smithが走り抜けてTD。NE 21-10 CAR。ブロックもよかった。A.Smithもよくタックルを外した。 (追記) 2004-02-02 11:31 CAR、エンドゾーンからのリターン。自陣15ヤード付近でコケた。プレイアクションからのパスが通って(10ヤード)1st down。ショットガンからの…イエロー(フォルススタート)。Delhomme、ポケットを抜け出して投げ捨てたような感じのパスを捕って1st down。ロングパスはダメ。インターフェアをアピールするが認められず。自陣45ヤード。左へのパスが通った(15ヤード)。1st down。やはりパスが調子良く通る。#20 Fosterのランはディフェンスの穴を突いて一気にTD。CARは2ポイントを選択。失敗。NE 21-16 CAR。 (追記) 2004-02-02 11:44 NEのリターンは自陣25ヤードで止まった。#83へのパス通って(12ヤード)1st down。#80がパスを落とした。T.Bradyyがプレッシャーを受けてヒットされたもののいいパスを投げたのだが。ショットガンから右#80へのショートパス+ランアフターキャッチで1st down。A.Smithのラン(7ヤード)、A.Smithのラン(1ヤード)、#82への右ショートパスが決まって1st down。K.Faulkのラン(15ヤードくらい)。ゴール前10ヤード。残り8:30くらい(何度も言うが見にくい)。ラン(1ヤード)、エンドゾーンへのパス失敗、エンドゾーンへのパスは#23 Howardがインターセプト! Bradyはプレッシャーを受けていたが、痛恨のミス。これまでミスはほとんどなかったのだが。残り7:30。 (追記) 2004-02-02 11:53 CARの攻撃。最初のショートパスは通ったがイエロー(ディフェンスのパーソナルファウル。ヘルメットtoヘルメット)。1st down。次のプレーでQB J.Delhommeがタックルを受けて投げ捨て。イエロー(なんかわからないけど5ヤード罰退(1st and 15)している。インテンショナルグラウンディングかな?)。しかしよくわからないけどリクラインして2nd and 10になった。パス失敗。相変わらずプロテクションがもたない。ここで一気にロングパス。WRが完全に抜けて、捕った後もうまくディフェンスを押しやって走りきり、TD(85ヤード)。CAR Panthers、初めてリードを奪う。CARは2ポイントを選択。失敗。CAR 22-21 NE。残り6:53。おもしろくなってきた。 (追記) 2004-02-02 12:07 NEのリターナーは速い。自陣30ヤード付近で止まる。ショットガンからショートパスを押し投げる(2ヤード)。プレッシャーを受けての中距離のパスはリフレクトされるがイエローフラッグ(ディフェンスのホールディング)。K.Faulkへのショートパス(4ヤード)。T.Brady、サックされかける。頻繁にヒットを受けるようになった。3rd and 6、ノーバックから#80へのショートパス、1st down。K.Faulkのラン(3ヤード)、ネイキッドからの#87 Givensへの中距離のパス。捕球した後、完全に抜けていたがバランスを崩してアウトオブバーンズへ。レッドゾーン目前、FG圏内へ。A.Smithのラン(1ヤード)。Vinatieriが頻繁に映る。プレイアクションからパスが失敗したがイエローフラッグ(イリーガルタッチ。リクラインで3rd and 9)。ショットガンから#87へのパスが通って1st down、ゴール前5ヤード。A.Smithのラン(1ヤード)、プレイアクションからエンドゾーン中央#50へのショートパスを簡単に決め、TD。これディフェンスの選手だよ。残り2:51。ここで2ポイントを選択。ショットガンをK.Faulkに直接スナップしてラン、成功。NE 29-22 CAR。それがあったかー! (追記) 2004-02-02 12:17 Vinatieriのキックはエンドゾーンからのリターン。35ヤードで止まるがイエローフラッグ(リターン側のホールディング)。CARは自陣20ヤードからの攻撃。ラン(9ヤード)、ラン(5ヤード)で1st down。長めのパス(15ヤードくらい)を捕球後左サイドラインに出て1st down。ここで後半2 minutes。Delhommeのパスは相変わらず通っている。1 possession差だから、同点のチャンスはある。 2 minutes明けのDelhomme、プレイアクションからロングパスを#81にヒット、いきなりレッドゾーンへ。敵陣15ヤード。エンドゾーン内へのパスは通らず。少し高いか。右へのショートパスは通ったがインバーンズでダウン。ショットガンから浮かせたパスがあっさりR.Proehlに通ってTD。完全に抜けられていた。どうしたんだろう。これでJ.KasayのTFP決まってCAR 29-29 NE。 (追記) 2004-02-02 12:20 CARのキックオフが直接外に出てNEは自陣40ヤードからの攻撃。右へのショートパスとランアフターキャッチで1st down、タイムアウト。残り0:41。 (追記) 2004-02-02 12:26 NE、ショットガンからパスが通って敵陣30ヤード内(FG圏内)へ。しかしイエローフラッグ(オフェンスのインターフェアかな?)。1st and 20、ショットガンから中央へのパス通って(15ヤード)、ショートパスを通して(2ヤード)タイムアウト。Vinatieriが映る。残り15秒、タイムアウト1回、敵陣40ヤード。3rd and 3。パス通して(10ヤード)タイムアウト。残り8秒、敵陣25ヤード。#4 A.Vinatieriが出てきた。41ヤードのFG attempt。大観衆、選手、お茶の間のみなさん、みんな固唾を飲んで見守る。2回の失敗シーンをリプレイ。 (追記) 2004-02-02 12:27 FGは決まった。ど真ん中。NE 32-29 CAR。残り4秒。試合は終わった。 (追記) 2004-02-02 12:32 A.VinatieriのFG失敗x2、エンドゾーンでのインターセプトなどもあり接戦になって盛り上がった。しかし全体的には堅実なプレーを繰り返したNE Patriotsが時間を支配し、3年で2回のスーパーボウル制覇という偉業を達成した。Carolina Panthersはビッグプレーをいくつか出して効率良く得点を積み重ねたが最後に及ばなかった。

迷える地図

6兆円市場に特許論争 地理院とメーカー大揺れ(yahoo.co.jp)。

カーナビなどに使われている「電子地図」をめぐり、国土地理院と地図メーカーの業界団体が、東京都内のソフトウエア会社から「特許侵害」を指摘され、大揺れに揺れている。ソフトウエア会社側は主要メーカーなどに損害賠償を求め提訴する構えで、本格的な特許論争に発展しそうだ。 (中略) ソフトウエア会社「丸石デジタル」側は「特許は作図の原理で、一部抵触などはあり得ない。抵触するかしないかの2つに1つだ」と話している。

なるほど。特許論争だけど、国土地理院にケンカを売るのはアッパレかもしれん。