Mouseを使用してGDBで開きます。_start」と入力し、「r」を押して実行します。すると、次の出力が得られます。home/tyler/ASM/Mouse/Mouseプログラム受信信号SIGSEGV、セグメンテーションフォールト。「_startのブレークポイントに到達することさえないように思えるので、何が間違っているのかわかりません。アドレス0にブレークポイントを設定します(これは不可能です)。プログラムを実行し、その時点でGDBは実際にブレークポイントを設定しようとします。失敗し、命令が実行される前に停止します。)そこからシングルステップします。使用して動的にリンクされている場合でも、シンボルを持たないプログラムをデバッグするための便利なトリックです。使用して実際のELFエントリポイントアドレスを取得することはできません。プログラムを実行します。私が持っているのは、GDBにシンボルテーブルを与えた場合にどこかに設定されるpendingブレークポイントだけです。(デバッグシンボルを別のファイルに取り除くことができるため、このgdbの動作は理にかなっています。残念ながらこの場合は混乱します。ビルドしたため、バイナリが削除されます。これは、デバッグに必要なものの反対です。シンボル情報をさらに改善するために、STABSではなくdebug-info形式。ブレークポイントを設定したことがないため、停止しませんでした。静的にリンクされたバイナリでは、ユーザー空間で実行する最初の命令は、ELFエントリポイントの命令です。エントリポイントと呼ばれるもの)。レジスタと逆アセンブリを表示します。GNUのMASMに似た構文を取得します。これは、NASMに近いため、それが何であるかを知っているときに読み取ることができます。