■ Google Desktop でブラウザが立ち上がらなくなった
検索とか「ホームページを表示」とかをやってもブラウザが開いてくれないので、役立たず状態だった Google Desktop さん。
Linux 版の gdlinux って(Windows は知らないけど)、エラーメッセージっぽいものが見当たらないんだよね。だからずっと放置してたんだけど、いい加減不便なんで調べてみる事にした。
で、エラーメッセージの件はやっぱり良くわかんなかくてウゼーとか思っていた所、起動中のプロセスのトレース方法について誰かが解説していたのを思い出したので挑戦してみた。
$ ps ax G google 11468 ? Ss 0:03 /opt/google/desktop/bin/gdl_box 11469 ? S 0:02 /opt/google/desktop/bin/gdl_service --Verbose=FATAL 11470 ? S 0:00 /opt/google/desktop/bin/gdl_config 11471 ? Sl 0:06 /opt/google/desktop/bin/gdl_indexer 11472 ? Sl 0:15 /opt/google/desktop/bin/gdl_fs_crawler 16733 pts/11 S+ 0:00 grep --color --color google
プロセス番号を調べてトレース! 何やら動きが激しい感じですが、気にせず検索を実行してみると関係ありそうなメッセージが出てきた。
$ ltrace -p 11468
~ 略 ~
free(0x8658eb0) = <void>
free(0x86563e0) = <void>
free(0x8633478) = <void>
free(0x8649db8) = <void>
readlink(0x82f51f0, 0xbfba83de, 4096, 0x404a88bd, 0x8389440) = 31
strlen("/opt/google/desktop/bin/gdl_box") = 31
malloc(44) = 0x8657fc0
memcpy(0x8657fcc, "/opt/google/desktop/bin/gdl_box", 31) = 0x8657fcc
strlen("/opt/google/desktop/bin") = 23
malloc(36) = 0x8634f30
memcpy(0x8634f3c, "/opt/google/desktop/bin", 23) = 0x8634f3c
malloc(59) = 0x8632fc0
memcpy(0x8632fcc, "/opt/google/desktop/bin", 23) = 0x8632fcc
free(0x8634f30) = <void>
malloc(37) = 0x8649308
memcpy(0x8649314, "/opt/google/desktop/bin/", 24) = 0x8649314
strlen("xdg-open") = 8
malloc(61) = 0x8633530
memcpy(0x863353c, "/opt/google/desktop/bin/", 24) = 0x863353c
free(0x8649308) = <void>
memcpy(0x8633554, "xdg-open", 8) = 0x8633554
free(0x8632fc0) = <void>
access("/opt/google/desktop/bin/xdg-open", 1) = 0
malloc(88) = 0x864a500
__errno_location() = 0x40a24ca4
time(NULL) = 1203653226
小躍りしながら /opt/google/desktop/bin/xdg-open の中身をチェックしてみると、どうやらこいつがブラウザを起動してるらしい。試しに実行してみると…。
$ /opt/google/desktop/bin/xdg-open http://www.google.co.jp/ /opt/google/desktop/bin/xdg-open: line 352: exo-open: command not found
!!!! これか!!!
というわけで、apt で探してきた exo-utils をインストールしたら xdg-openapt コマンドがちゃんと動くようになって、Google Desktop もちゃんと動くようになりました。exo なんちゃらって言うのは、Xfce のライブラリらしい。
自分でも何したのか良くわかんないけど、バイナリはすごかった。
Posted by Kyosuke Takayama at 2008-02-22 (Fri) 17:07 printable version

