1

私はgdb 7.1でARMシステムに取り組んでいます(7.5も試しました)。このツールを使用して、複数の共有ライブラリで構成されたアプリケーションをデバッグしています。

このアプリケーションを ARM 側でデバッグすると、gdb 7.1 を使用して、ロードされた共有ライブラリ (数字の「共有」) を確認できます。完全!

WindowsホストのgdbとARMのgdbserverで同じことをリモートで実行しようとしています。

だから私は持っています:1)arm v.7.4.1のWindows上のgdb(7.3.1も試しました)2)arm v.7.1のgdbserver(7.5も試しました)

Windowsでは、共有ライブラリを除いてすべてを問題なくデバッグできます。実際、「共有」を数字で入力しようとすると、ロードされた共有ライブラリがないと表示されます。少なくとも 1 つのライブラリがロードされていることは間違いありません (アーム側でも同じ状況で問題なく動作します)。

何か案が?

編集:おそらく私は何かを見つけました:

アーム上の gcc で、ロードされた共有ライブラリ (「共有」) を要求すると、solib を完全にサポートする関数 solib.c:info_sharedlibrary_command が呼び出されます。(そしてそれは正常に動作します)

代わりに、Windows の gdb とアームの gdbserver で同じコマンドを要求すると、solib を管理せず、dll のみを管理するコマンド「qXfer:libraries:read:」が渡されます。そして、dlls リストは明らかに空です。

私は何か見落としてますか?

解決しました!http://sourceware.org/bugzilla/show_bug.cgi?id=14670

4

0 に答える 0