一、前期准备
1、编译通过的Android源代码(我是Android 2.3)
2、安装了CDT的Eclipse
3、重新编译Android gdbserver(非必须)
因手头Android 2.3源码编译后的版本执行gdbserver时报错:Segmentation fault,不得不重新编译gdbserver。参考博文:自己编译Android
gdbserver(解决运行 gdbserver时 Segmentation fault 问题)。
二、建立Eclipse C/C++工程
这里的C/C++工程属性可随意选择,目的是为了用Eclipse编辑和调试,不需要Eclipse做编译工作。建立好工程后可以将部分Android C/C++源码链接到工程中,方便查看。三、编译并安装将被调试的程序
1、撰写Android.mk,Andriod源码下编译获得可执行文件或动态库
这是基本工作,无须多言2、使用带调试符号表的C/C++程序替换原有程序
simba@simba-Vostro-3400:~/neptune/android_2.3$ adb push out/target/product/xxxx/symbols/system/bin/debug_demo /system/bin
3、在Eclipse Debug Configurations中新建C/C++ Remote Application
在Main标签页中设置:C/C++ Application:/home/simba/neptune/android_2.3/out/target/product/xxxx/symbols/system/bin/debug_demo
Project:(将要调试的代码对应工程)Connection:localRemote Absolute File Path :/system/bin/debug_demo
Commands to execute before application:/opt/android/sdks/r15/platform-tools/adb shell gdbserver :5039 /system/bin/debug_demo
/opt/android/sdks/r15/platform-tools/adb forward tcp:5039 tcp:5039
注意,这里的adb路径一定要完整路径。选中 “Skip download to target path”在Debugger标签页中设置:GDB debugger(与gdbserver对应的gdb的路径):/home/simba/neptune/android_2.3/prebuilt/linux-x86/toolchain/arm-eabi-4.4.3/bin/arm-eabi-gdb
GDB command file:
暂时置空。
Gdbserver Settings:Gdbserver name:gdbserverPortnumber:5039
4、开始愉悦地调试吧
--
参考文章:
用Eclipse开发与调试纯粹的Android C++程序,非ndk-build、ndk-gdb
分享到:
相关推荐
### Eclipse+CDT+GDB调试Android NDK程序详解 #### 开发环境确认与准备 在开始使用Eclipse+CDT+GDB调试Android NDK程序之前,首先需要确保已经搭建好以下开发环境: 1. **Ubuntu 11.10**:作为主要的操作系统,...
【Eclipse+CDT+GDB调试Android NDK程序】是一种在Eclipse集成开发环境中,利用CDT(C/C++ Development Tooling)和GDB(GNU Debugger)进行原生代码调试的技术。Android NDK允许开发者在Android应用中使用C或C++编写...
此处提到的调试方案主要针对APK中的native层面,即针对使用C或C++等语言编写的本地代码库。 该方案的基础准备工作首先需要一系列的开发与调试工具,包括eclipse IDE、Android NDK、Cygwin以及apktool。apktool是一...
本文将详细介绍如何利用Eclipse、ADT(Android Development Tools)插件以及NDK(Native Development Kit)来调试Android项目中的C源码。 #### 二、准备工作 **1. 安装必要的软件** - **adt-bundle-windows-x86.zip*...
NDK是一组工具,允许开发者使用C和C++编写应用程序的一部分,这些部分可以与Java代码一起运行,实现高性能的计算或者利用硬件特性。在本教程中,我们将深入探讨如何在Eclipse环境中集成NDK,以便更方便地编译和调试C...
### 使用Eclipse单步调试JNI代码(方法2) #### 环境配置 为了能够有效地进行JNI代码的调试,首先需要确保以下环境已正确配置: - **ADT Bundle**: Eclipse版本为Juno - **NDK**: 版本r9 - **JDK**: 版本8 - **...
总的来说,Android + Eclipse + NDK环境搭配是针对特定需求的高效开发方案,允许开发者充分利用C/C++的性能优势,同时利用Eclipse的强大调试功能。在实际开发中,根据项目需求和团队能力,合理选择是否采用这种搭配...
总的来说,调试Android源码中的C++代码需要对Android系统有一定的了解,同时也需要熟悉Eclipse的调试工具和NDK的相关工作原理。通过以上步骤,开发者可以更有效地定位和解决问题,提升开发效率。
【C/C++ Android开发环境配置】是Android原生开发中的重要环节,主要涉及三个关键工具:Android NDK、Android SDK和Ant。以下是这些工具的详细配置步骤和使用方法。 一、Android NDK NDK(Native Development Kit)...
总的来说,配置Windows上的Eclipse、Cygwin、CDT和NDK环境,主要是为了在Windows环境下进行C/C++的Android原生代码开发。通过Eclipse和CDT,我们可以得到一个强大的C/C++ IDE;Cygwin提供了Linux工具链,使得在...
Android NDK(Native Development Kit)是Google提供的一款工具集,允许开发者在Android应用中使用C和C++语言编写部分代码,以实现高性能、低级别的硬件访问或者利用现有的C/C++库。在Eclipse集成Android NDK的过程...
标题中的“使用eclipse单步调试jni代码(方法1)”是指使用Eclipse集成开发环境进行JNI(Java Native Interface)代码的调试,这是Android应用开发中处理C或C++原生代码的一种方式。JNI允许Java代码调用本地库,通常...
本文将详细介绍如何在Eclipse环境中使用GDB Server(即gdsserver)来调试Android NDK程序。 **一、Android NDK介绍** Android NDK是一套工具,允许开发者在Android应用中使用原生代码,如C和C++。这在处理高性能...
标题 "gdb-7.5_android_ubuntu10.04_python26" 暗示了这是一个关于在Ubuntu 10.04操作系统上使用GDB(GNU调试器)7.5版本来调试Android应用的集合,其中可能包含Python 2.6的组件。GDB是一个强大的源代码级别调试器...
Android NDK-GDB是针对使用C/C++编程语言在Android平台上开发应用的开发者所必备的调试工具。从NDK r4版本开始,NDK引入了NDK-GDB,使得开发者能够方便地对本地代码进行调试。本文将详细介绍NDK-GDB的使用方法及其...
主要内容:● 使用JNI将原生代码连接到Java中● 使用SWIG自动生成JNI代码● 使用POSIX线程实现多线程应用● 使用POSIX套接字实现网络应用● 使用logging、GDB和Eclipse调试器进行调试● 使用Valgrind分析内存● 使用...
在Android开发中,底层驱动开发往往涉及C语言,因为Android的内核和其他低级系统服务主要是用C和C++编写的。Eclipse CDT成为了一个理想的开发工具,它提供了一种高效、直观的方式来编写、测试和调试C/C++代码。 ...