2012年1月15日日曜日 gdb で void* 型の変数をデバッグする C言語で実装されたライブラリやアプリケーションでは、汎用的な型として随所で void* が使用されますが、これをgdbからデバッグすると、そのままでは型情報が無いためタダのポインタとして扱われてし... 続きを読む
C++を書くときにデバッガを使うことが多いので,gdbについてメモしておきます.gcc+gdbによるプログラムのデバッグ 第1回 ステップ実行、変数の操作、ブレークポイントgdb を用いたデバッグ方法GDB.gdbinit を公開してみる - アスペ日記gdb + Emacs でおいしい... 続きを読む
Perlの中をgdbで覗く by higuchi.akira 2011/04/25 14:19 on Perl こんにちは。DeNAの樋口です。 Perlで書かれたアプリを動かしているときに、Perlのプロセスが今コードの何処を実行中なのか知りたいことがよくあります。そのような場合には、gdbで実行中のプロ... 続きを読む
普段Webサーバを運用していて、めんどくさいトラブルのひとつに「Segmentation fault」があります。あれー?なんか500エラーがでるなーなんて思ってログを見るとSegmentation faultになってるときは死にたくなります。 そもそもSegmentation faultはメモリ上に... 続きを読む
07:58 | でコードビューアを立ち上げて快適デバッグ - ひっそりらぼ " /> はじめにはてなダイアリーのスーパーpre記法(ブログ本文にソースコード等を貼り付けるための記法)で始まるテキストがクリップボードに入った状態で、間違って、gdbのシェルに貼り付けて... 続きを読む
Pyclewn allows using vim as a front end to a debugger. Pyclewn currently supports gdb. The debugger output is redirected to a vim window, the pyclewn console. The debugger commands are mapped to vim user-defined commands with a common letter ... 続きを読む
gdbGDB において特定の回数関数が呼ばれたら break する方法。 # break point を表示。番号を知る (gdb) info b Num Type Disp Enb Address What 1 breakpoint keep y 0x0000000000413fab in scheme::VM::runLoop(scheme::Object*, __jmp_buf_tag*, bool) at sr... 続きを読む
08:02 | 先日のShibuya.pm #9のLightening Talkで「gdbでXS on mod_perlをデバッグ」という話をしてきました。XSを使い出すと、従来のPerl的デバッグだけでは不十分なのでgdbをうまく使って、効率的にデバッグしましょう、という話です。実は、はてな社内では1... 続きを読む
LLつかってても「ばすえらーになるー」っていう状況ってたまにあるわけですが、LL しか普段つかわないゆとりは、ここでお手あげになってしまったりすることがままあります。で、「ばすえらーになるんですが」ってときの最低限これだけはやってみたらどうか、と... 続きを読む
プログラムをGDB配下で実行するには、 コンパイル時にデバッグ情報を生成する必要があります。 ユーザが選択した環境で、 必要に応じて引数を指定して、 GDBを起動することができます。 ネイティブ環境でデバッグを行っているのであれば、 プログラムの入力元と... 続きを読む
Twitter上で、@alohakun が言及していた GDB の reverse debugging の機能を使ってみました。GDBの逆実行は、2年前のGCC summitで発表されたものらしい。(実際にオタワで発表を聞いてきたQLeapさん談)Twitter / ベニテングタケ: GDBの逆実行は、2年前のGCC summ... 続きを読む
Emacs + GDB を利用したいならば、何よりも GNU Emacs Manual: Debuggers(英語) を読むことを強くおすすめします。和訳も存在しますが内容が古く、マウスを利用した操作やグラフィカルな機能についての記述がありませんでした。 マニュアルを読んで理解したあ... 続きを読む