gpt4 book ai didi

Xcode/lldb : stop application without symbols at entry into program

转载 作者:行者123 更新时间:2023-12-04 12:26:34 25 4
gpt4 key购买 nike

在 lldb 命令行中,我可以通过以下方式使用 --stop-at-entry 选项停止执行程序(没有调试符号):

(lldb) target create /bin/ls
Current executable set to '/bin/ls' (x86_64).
(lldb) process launch --stop-at-entry
Process 22250 launched: '/bin/ls' (x86_64)
Process 22250 stopped
* thread #1: tid = 0xc46fa, 0x00007fff5fc01028 dyld`_dyld_start, stop reason = signal SIGSTOP
frame #0: 0x00007fff5fc01028 dyld`_dyld_start
dyld`_dyld_start:
-> 0x7fff5fc01028: popq %rdi
...

不过,我更愿意在 Xcode (5) IDE 中为 lldb 工作。那里可能有同样的事情吗?我可以通过菜单调试->附加到进程->按进程标识符或名称成功附加到进程。如果您在那里输入应用程序名称,lldb 将在启动后立即接管该进程。但是,我看不到程序启动时停止执行的方法,即相当于 --start-at-entry。我也看不到在 IDE 的 lldb 窗口中输入相应命令的方法,因为应用程序尚未启动。

这在 IDE 中可行吗?

最佳答案

不确定您要做什么,但是 lldb 确实有一个在共享库加载时停止的设置:

(lldb) settings set target.process.stop-on-sharedlibrary-events 1

这将导致 lldb 正在调试的程序在加载新的共享库时停止。在第一次加载共享库之前的过程中没有太多进展,所以这会很早地捕捉到它。

关于Xcode/lldb : stop application without symbols at entry into program,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21136649/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com