有時候工程檔案部署不完全,bin/ndk下檔案沒有完全產生會導致ndk-gdb有問題。
多在win下發生。
另外:cygwin下的環境變數問題
On windows platform, the variable $APP_PROCESS contains path in cygwin
format. ADB does not recognize this and pulls app_process to a wrong
directory. For example if the location of hello-jni is:
C:/android-ndk-r4
/samples/hello-jni
then ADB pulls app_process to:
C:/cygdrive/c/android-ndk-r4
/samples/hello-jni/bin/ndk/local/armeabi
To fix this, a check can be added in ndk-gdb that detects if platform is
Windows, then use cygpath to convert $APP_PROCESS to native Windows format.
Cygpath utility is normally bundled with cygwin;
I have implemented this fix by replacing line:
run adb pull /system/bin/app_process $APP_PROCESS
with;
if [ -s "${COMSPEC}" ] ; then
run adb pull /system/bin/app_process "`cygpath -w $APP_PROCESS`"
else
run adb pull /system/bin/app_process $APP_PROCESS
fi