2016-03-22 9 views
0

プラットフォームはMacです。NDK r11bを使用すると、私のアプリケーションは約8 c/C++のファイルで構成されます。過去に私はNDK r10e経由でndk-gdb(sh)スクリプトを使用しました。シェルスクリプトは廃止され、ndk-gdb.pyが唯一のオプションになりました。問題は私がそれを働かせることができないことです。私はいつもやったように私のプロジェクトフォルダから実行しています。 私は運がない複数のコマンドラインオプションを試しました。私のソースファイルが見つからないような気がします。それは"Waiting for Debugger"でアプリケーションを起動します。私は(gdb) promptに行く。私は信頼できる割り込みポイントで幸運を壊すブレークポイントを追加しようとしました。 ndk-gdbのpythonバージョンを設定して使用する方法についてのいくつかの指針が必要です。 Googleがドキュメントファイルを削除したため、ガイドとして十分な場所が見つかりませんでした。NDK r11b:ndk-gdb.pyデバッガを使用してヘルプが必要

私が試したいくつかのコマンドライン。

ndk-gdb --launch --verboseこれは、デバッガ

ndk-gdbを待っている上のアプリケーションが、ブロックは、実行中のプロセスにアタッチします起動します。 ctr-cは実行を一時停止しますが、バックトレースbtは破損したスタックをリストします。

ndk-gdb --launch -t -v -p $ProjectDir私は精通していないよ新しいインターフェイスを取得し、それが[ No Source Available ]

任意のヘルプや洞察力が私のために

答えて

0

同じ話をいただければ幸い述べて - 私は過去、「デバッガを待っている取得することができました"新しいメッセージを表示するには、ndk-gdb --launch --force --nowait を発行してください。ただし、GoogleのNDKサンプルでもndk-gdbはうまく動作しません。 info threadコマンドだけが、スタックトレース以外の実際の結果を生成します。btinfo stackなどは、破損したスタックに不満を持ちます。 ターゲットデバイスは、最新のアップデートを適用したNexus 5 API 23を実行しています。 NDK r11bによってコンパイルされた同じバイナリは、以前のNDK r10eからGDB 7.7によって正常にデバッグできました。 Windowsでは 、ndk-gdb.pyは、次のエラーメッセージで失敗します

Traceback (most recent call last): File "F:\work\android-ndk-r11b\prebuilt\windows\bin\ndk-gdb.py", line 704, in <module> main() File "F:\work\android-ndk-r11b\prebuilt\windows\bin\ndk-gdb.py", line 583, in main args.props = device.get_props() File "F:\work\android-ndk-r11b\python-packages\adb\device.py", line 459, in get_props raise RuntimeError('invalid getprop line: "{}"'.format(line)) RuntimeError: invalid getprop line: ""

実は、それはNDKのR11Bからndk-gdb.pyのように見えるだけで、Linux上で動作します:

[email protected]:/vagrant/native_activity$ $ANDROID_NDK_ROOT/ndk-gdb --launch --force WARNING: Failed to find jdb on your path, defaulting to --nowait Redirecting gdbclient output to /tmp/gdbclient-9150 GNU gdb (GDB) 7.10 ... This GDB was configured as "x86_64-linux-gnu". ... warning: Could not load shared library symbols for 110 libraries, e.g. /system/lib/libcutils.so. Use the "info sharedlibrary" command to see the complete listing. Do you need "set solib-search-path" or "set sysroot"? 0xb6c93894 in __epoll_pwait() from /vagrant/native_activity/obj/local/armeabi-v7a/system/lib/libc.so (gdb) info sources Source files for which symbols have been read in: Source files for which symbols will be read in on demand: /Volumes/Android/buildbot/tmp/build/toolchain/gcc-4.9/gcc/include/unwind-arm-common.h, /Volumes/Android/buildbot/src/android/gcc/toolchain/build/../gcc/gcc-4.9/libgcc/config/arm/pr-support.c, /Volumes/Android/buildbot/src/android/gcc/toolchain/build/../gcc/gcc-4.9/libgcc/config/arm/libunwind.S, /Volumes/Android/buildbot/tmp/build/toolchain/gcc-4.9/arm-linux-androideabi/armv7-a/libgcc/./unwind.h, /Volumes/Android/buildbot/src/android/gcc/toolchain/build/../gcc/gcc-4.9/libgcc/unwind-arm-common.inc, /Volumes/Android/buildbot/src/android/gcc/toolchain/build/../gcc/gcc-4.9/libgcc/config/arm/unwind-arm.c, /Users/mike/android-ndk-r11b/sources/android/native_app_glue/android_native_app_glue.c, /vagrant/native_activity/jni/main.c

基本コマンド正しく動作している:

(gdb) bt #0 0xb6c93894 in __epoll_pwait() from /vagrant/native_activity/obj/local/armeabi-v7a/system/lib/libc.so #1 0xb6c6ce72 in epoll_pwait() from /vagrant/native_activity/obj/local/armeabi-v7a/system/lib/libc.so #2 0xb6c6ce80 in epoll_wait() from /vagrant/native_activity/obj/local/armeabi-v7a/system/lib/libc.so #3 0xb6ebfc5a in ??() Backtrace stopped: previous frame identical to this frame (corrupt stack?) (gdb) info thread Id Target Id Frame 11 Thread 28735 0xb6c6a5e4 in syscall() from /vagrant/native_activity/obj/local/armeabi-v7a/system/lib/libc.so 10 Thread 28733 0xb6c93894 in __epoll_pwait() from /vagrant/native_activity/obj/local/armeabi-v7a/system/lib/libc.so 9 Thread 28721 0xb6c939bc in __ioctl() from /vagrant/native_activity/obj/local/armeabi-v7a/system/lib/libc.so 8 Thread 28720 0xb6c939bc in __ioctl() from /vagrant/native_activity/obj/local/armeabi-v7a/system/lib/libc.so 7 Thread 28719 0xb6c6a5e4 in syscall() from /vagrant/native_activity/obj/local/armeabi-v7a/system/lib/libc.so 6 Thread 28718 0xb6c6a5e4 in syscall() from /vagrant/native_activity/obj/local/armeabi-v7a/system/lib/libc.so 5 Thread 28717 0xb6c6a5e4 in syscall() from /vagrant/native_activity/obj/local/armeabi-v7a/system/lib/libc.so 4 Thread 28716 0xb6c6a5e4 in syscall() from /vagrant/native_activity/obj/local/armeabi-v7a/system/lib/libc.so 3 Thread 28715 0xb6c94948 in recvmsg() from /vagrant/native_activity/obj/local/armeabi-v7a/system/lib/libc.so 2 Thread 28714 0xb6c93b68 in __rt_sigtimedwait() from /vagrant/native_activity/obj/local/armeabi-v7a/system/lib/libc.so * 1 Thread 28709 0xb6c93894 in __epoll_pwait() from /vagrant/native_activity/obj/local/armeabi-v7a/system/lib/libc.so

+0

私は残念なことに私には選択肢ではありませんが、苦しんでいる惑星地球上の唯一のものではないことの検証に感謝します。連帯感に感謝:) – rabidcat

+0

NDK GitHubレポで問題を作りましょう。 –

+0

NDK GitHubリポジトリが見つかりません。私が見ることができる最も近いのはサンプルのためのものですが、実際のNDKの問題のための適切なフォーラムではないと思います。 – rabidcat

関連する問題