ant 调试未能在 apk 文件中包含 gdb.setup
ant debug failed to include gdb.setup in the apk file
我已经(从 mac 终端)成功地构建了这个本机应用程序很长时间了,但是今天我 运行 遇到了一个我似乎无法确定的错误。在厌倦了所有 javac 警告之后,我升级到较新版本的 ant。我不确定它是否相关,但时间值得怀疑。我仍然可以构建、部署和 运行 我的应用程序,但现在我不能再使用 ndk-gdb 调试应用程序的本机部分。经检查发现 gdb.setup 文件未添加到调试 apk 中。
这是构建顺序、缩写输出和信息。我正在寻找有关如何解决问题的建议。
我已经对 NDK 和 ant 构建进行了全面清理
androidNDK版本和androidSDK版本都是最新的。
我使用内置的 ndk-bundle,它加载了 android studio sdk 工具。
我们开发的设备没有 root 权限,所以不是一个选项。
hsmith$ java -版本
java版本“1.8.0_45”
Java(TM) SE 运行时环境(build 1.8.0_45-b14)
Java HotSpot(TM) 64 位服务器 VM(内部版本 25.45-b02,混合模式)
hsmith$$ANT_HOME
-bash: /Users/hsmith/dk/ant/apache-ant-1.9.6: 是一个目录
hsmith$ ndk-build -j4 NDK_DEBUG=1
[armebi-v7a] Gdbserver : [arm-linux-androideabi-4.8] libs//gdbserver
[armebi-v7a] Gdbsetup : libs//gdb.setup
[armebi-v7a] 安装:lib1.so => libs/armebi-v7a/lib1.so
[armebi-v7a] 安装:lib2.so => libs/armebi-v7a/lib2.so
[armebi-v7a] 安装:lib3.so => libs/armebi-v7a/lib3.so
hsmith$ 蚂蚁调试
……
-包裹:
[apkbuilder] 找到修改后的输入文件
[apkbuilder] 创建 -debug-unaligned.apk 并使用调试密钥对其签名...
-post-包:
-调试:
[zipalign] 运行 最终 apk 上的 zip 对齐...
[echo] Debug Package: /Users/hsmith/packageFolder/bin/<package>-debug.apk
[属性file] 更新 属性 文件:/Users/hsmith/packageFolder/bin/build.prop
[属性file] 更新 属性 文件:/Users/hsmith/packageFolder/bin/build.prop
[属性file] 更新 属性 文件:/Users/hsmith/packageFolder/bin/build.prop
[属性file] 更新 属性 文件:/Users/hsmith/packageFolder/bin/build.prop
-post-构建:
调试:
构建成功
hsmith$ adb install -r ~/packageFolder/bin/-debug.apk
hsmith$ ndk-gdb adb --start
错误:包不可调试!您可以通过两种方式解决该问题:
在调用 'ndk-build' 时使用 NDK_DEBUG=1 选项重建。
修改清单以将 android:debuggable 属性设置为 "true",
然后正常重建
其中之一后,重新安装到设备!
我解压apk文件找到
解压缩 apk file/lib/target/
hsmith$ ls -la
总计 48264
drwxr-xr-x 12 hsmith 员工 408 8 月 25 14:50 .
drwxr-xr-x 5 hsmith staff 170 八月 25 14:50 ..
-rwxr-xr-x 1 hsmith 员工 409940 6 月 3 11:47 gdbserver
-rwxr-xr-x 1 名 hsmith 员工 33920 8 月 25 日 14:44 lib1.so
-rwxr-xr-x 1 hsmith 员工 165092 8 月 25 日 14:44 lib2.so
-rwxr-xr-x 1 hsmith 员工 1614028 8 月 25 日 14:44 lib3.so
注意没有 gdb.setup 文件
我没有在清单中使用 debuggable=true 因为不再需要它,但是包含它对结果没有影响。
更新:https://code.google.com/p/android/issues/detail?id=183455
这正是我遇到的问题。如果您将目标 gdb.setup 文件从目标目录复制到 ./lib 目录,您可以让 ndk-gdb 工作; ndk-gdb 中的 COMPAT_ABI 变量设置不正确,导致脚本陷入困境。我希望他们尽快解决这个问题。将近三天浪费在损坏的工具链上。
更新:https://code.google.com/p/android/issues/detail?id=183455 这正是我遇到的问题。如果您将目标 gdb.setup 文件从目标目录复制到 ./lib 目录,您可以让 ndk-gdb 工作; ndk-gdb 中的 COMPAT_ABI 变量设置不正确,导致脚本陷入困境。我希望他们尽快解决这个问题。将近三天浪费在损坏的工具链上。
我已经(从 mac 终端)成功地构建了这个本机应用程序很长时间了,但是今天我 运行 遇到了一个我似乎无法确定的错误。在厌倦了所有 javac 警告之后,我升级到较新版本的 ant。我不确定它是否相关,但时间值得怀疑。我仍然可以构建、部署和 运行 我的应用程序,但现在我不能再使用 ndk-gdb 调试应用程序的本机部分。经检查发现 gdb.setup 文件未添加到调试 apk 中。
这是构建顺序、缩写输出和信息。我正在寻找有关如何解决问题的建议。
我已经对 NDK 和 ant 构建进行了全面清理
androidNDK版本和androidSDK版本都是最新的。 我使用内置的 ndk-bundle,它加载了 android studio sdk 工具。
我们开发的设备没有 root 权限,所以不是一个选项。
hsmith$ java -版本 java版本“1.8.0_45”
Java(TM) SE 运行时环境(build 1.8.0_45-b14) Java HotSpot(TM) 64 位服务器 VM(内部版本 25.45-b02,混合模式)
hsmith$$ANT_HOME
-bash: /Users/hsmith/dk/ant/apache-ant-1.9.6: 是一个目录
hsmith$ ndk-build -j4 NDK_DEBUG=1
[armebi-v7a] Gdbserver : [arm-linux-androideabi-4.8] libs//gdbserver
[armebi-v7a] Gdbsetup : libs//gdb.setup
[armebi-v7a] 安装:lib1.so => libs/armebi-v7a/lib1.so
[armebi-v7a] 安装:lib2.so => libs/armebi-v7a/lib2.so
[armebi-v7a] 安装:lib3.so => libs/armebi-v7a/lib3.so
hsmith$ 蚂蚁调试 …… -包裹: [apkbuilder] 找到修改后的输入文件
[apkbuilder] 创建 -debug-unaligned.apk 并使用调试密钥对其签名...
-post-包:
-调试:
[zipalign] 运行 最终 apk 上的 zip 对齐...
[echo] Debug Package: /Users/hsmith/packageFolder/bin/<package>-debug.apk
[属性file] 更新 属性 文件:/Users/hsmith/packageFolder/bin/build.prop
[属性file] 更新 属性 文件:/Users/hsmith/packageFolder/bin/build.prop
[属性file] 更新 属性 文件:/Users/hsmith/packageFolder/bin/build.prop
[属性file] 更新 属性 文件:/Users/hsmith/packageFolder/bin/build.prop
-post-构建:
调试:
构建成功
hsmith$ adb install -r ~/packageFolder/bin/-debug.apk
hsmith$ ndk-gdb adb --start
错误:包不可调试!您可以通过两种方式解决该问题:
在调用 'ndk-build' 时使用 NDK_DEBUG=1 选项重建。
修改清单以将 android:debuggable 属性设置为 "true",
然后正常重建
其中之一后,重新安装到设备!
我解压apk文件找到
解压缩 apk file/lib/target/
hsmith$ ls -la
总计 48264
drwxr-xr-x 12 hsmith 员工 408 8 月 25 14:50 .
drwxr-xr-x 5 hsmith staff 170 八月 25 14:50 ..
-rwxr-xr-x 1 hsmith 员工 409940 6 月 3 11:47 gdbserver
-rwxr-xr-x 1 名 hsmith 员工 33920 8 月 25 日 14:44 lib1.so
-rwxr-xr-x 1 hsmith 员工 165092 8 月 25 日 14:44 lib2.so
-rwxr-xr-x 1 hsmith 员工 1614028 8 月 25 日 14:44 lib3.so
注意没有 gdb.setup 文件
我没有在清单中使用 debuggable=true 因为不再需要它,但是包含它对结果没有影响。
更新:https://code.google.com/p/android/issues/detail?id=183455 这正是我遇到的问题。如果您将目标 gdb.setup 文件从目标目录复制到 ./lib 目录,您可以让 ndk-gdb 工作; ndk-gdb 中的 COMPAT_ABI 变量设置不正确,导致脚本陷入困境。我希望他们尽快解决这个问题。将近三天浪费在损坏的工具链上。
更新:https://code.google.com/p/android/issues/detail?id=183455 这正是我遇到的问题。如果您将目标 gdb.setup 文件从目标目录复制到 ./lib 目录,您可以让 ndk-gdb 工作; ndk-gdb 中的 COMPAT_ABI 变量设置不正确,导致脚本陷入困境。我希望他们尽快解决这个问题。将近三天浪费在损坏的工具链上。