关闭。这个问题不符合StackOverflowguidelines.它目前不接受答案。我们不允许提问寻求书籍、工具、软件库等的推荐。您可以编辑问题,以便用事实和引用来回答。关闭8年前。Improvethisquestion有谁知道关于使用GDB调试MacOS和iOS的非常好的教程、书籍或文章?特别是涵盖了Apple添加的命令,例如“po”(打印对象)以及标准GDB命令。谢谢!
我遇到了一个问题,我在调试中运行我的应用程序时在特定点收到GDB中断,但调试器中没有显示错误消息。有问题的代码是:-(void)AddContactViewControllerDidFinish:(AddContactViewController*)controller{//Savecontact&requirementNSManagedObjectContext*context=[selfmanagedObjectContext];Contact*contactObj=[NSEntityDescriptioninsertNewObjectForEntityForName:@"Cont
我想在越狱的iPodTouch4、iOS(5.1.1)上调试应用程序。唯一的问题是GDB似乎对应用程序的类/选择器名称一无所知。附加和设置地址断点有效,但在尝试使用objective-c名称时无法识别符号。例如,break-[ClassSelector:]将失败。(我知道+和-代表不同的类类型。)此外,我没有此应用程序的源代码,因此无法获取它。我希望在没有xcode或源代码的情况下在设备上纯粹使用GDB。有没有人成功过这个?预先感谢任何答案。 最佳答案 假设您正在尝试调试来自商店/发布版本的应用程序,那么您的二进制文件将被编译器从中
macOS系统中默认的C/C++编译器是clang/clang++,命令行使用gcc/g++或者clang/clang++来执行命令时,都是调用clang/clang++编译器,想使用gcc/g++编译器的话,我们可以自己安装。查看一下gcc和clang1.安装Homebrew,官网链接,复制粘贴到Terminal运行脚本,如下/bin/bash-c"$(curl-fsSLhttps://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"2.安装gcc编译器集查看安装的版本,由于macOS中的gcc名字被占用,所以需要使
在lldb中,我得到了helpbreakpointset:-a(--address)Setthebreakpointatthespecifiedaddress.Iftheaddressmapsuniquelytoaparticularbinary,thentheaddresswillbeconvertedtoa"file"address,sothatthebreakpointwilltrackthatbinary+offsetnomatterwherethebinaryeventuallyloads.Alternately,ifyoualsospecifythemodule-witht
这是我根据许多教程运行ndk-gdb后得到的结果,当它链接到(gdb)服务器时,您必须键入continue但是在那之后如何调试代码。在我的例子中,它显示Continuing并保持这样。我完全不知道我还需要做什么。Arathore@chd-arathore-AND/cygdrive/d/All_Work/All_ARathore/All_Workspace_Practice/ndkfoo$/cygdrive/d/All_Required_Stuff/Android/android-ndk-r8e/ndk-gdb--verbose--adb=/cygdrive/D/All_Required
我正在尝试调试我使用androidndk-build脚本构建的一些native代码,但遇到了一个小障碍。我已经将native代码编译到一个共享库中,我想在eclipse中使用ndk-gdb对其进行调试。代码是使用构建的APP_OPTIM:=debug在Application.mk文件中,我还添加了-g标志以确保安全。Eclipse配置为调试native代码,我可以连接到设备上的gdbserver,但由于gdb出现以下错误,我无法设置断点:496-break-insert/home/lithium/workspace/supermariowar/jni/SMW/SDL_android_m
GDB开始让我头疼了。GDB的工作方式似乎有些奇怪。obj/local/armeabi/包含项目中使用的所有未删除的.so文件的列表以及名为objs-debug的目录,其中包含一堆.o和.od文件。在启动ndk-gdb时,似乎没有任何.so文件被加载。我试图手动更改gdb.setup文件,但显然当gdbserver启动时,该文件被替换为它自己的版本;)nm-a-Conlibmylibary.so显示了大量符号。它似乎没有加载任何.so文件,甚至没有查看objs-debug文件夹。啊!我们一如既往地非常感谢您的帮助。[root@xyzSviCore]#/Android/ndk/ndk-g
我在Android设备上设置了调试ROM,并启用了DDMSnative堆来搜索libgdx内存泄漏。我现在有了踪迹,但没有附加源代码来追踪线索。我下载了libgdx源代码。如何构建它以启用gdb跟踪,以便我可以跟踪跟踪引用的代码?更新:我从源代码构建了调试.solibgdx为此,我修改了文件:libgdx/gdx/jni/build-android32.xml添加到compile-natives目标我还将APP_OPTIM:=debug添加到同一文件夹中的Application.mk并在同一文件夹中的Android.mk文件中添加“-g”:LOCAL_CFLAGS:=-g$(LOCAL
我想使用GDB调试一个android应用程序,我没有源代码并且我习惯了GDB。有人知道该怎么做吗?看来我需要附加到应用程序的进程并使用gdbserver但我还没有找到关于如何做到这一点的好教程......谢谢! 最佳答案 可能没有分步教程,但人们一直在使用gdbserver来调试JNI应用程序。检查以下链接:http://honeypod.blogspot.com/2008/01/debug-native-application-for-android.htmlhttp://vilimpoc.org/blog/2010/09/23/