Saturday 21 December 2013

lldb vs gdb

Mavericks になって、gdb がなくなったので。まぁ、入れりゃいいだけなんですが。というか、前のXcodeの gdb がそのまま動くし。でも、

* 最新の Mac OSの default を使う

という方針で lldb に。だいぶ手が痙ったが、まぁ、慣れました。gdb で出来ることは、ほとんどできるようになったはず。dump の format 指定ぐらいか。

command のoptionが -c とかで - を付けるのが馴染めない。あと、b と br で動作が違うのもなぁ。

disassemble が、妙に長く出力される。ま、いいけどね。

run する時に binary が modify されてると自動的に新しいのを load してくれるのが便利です。

gdb よりは C++ の関数名の補完の精度が良いかな。

GPUの中にも手を入れたい気もするが、現状ではできないみたい。でも、.cl は clang で、そのままコンパイルできるのね。

そんな感じで、また、どうせ、すぐに時代遅れになる know how を貯めてます。ddt, symdeb, sdb, adb, dbx, gdb そして、lldb か。

adb のコマンド体系はわかりにくかった。それだけに覚えた時には便利なんだけど。88年の Morris virus の時には adb で binary patch を当てたものです。

No comments: