iPhone模拟器应用的终端命令行调试?(Terminal command-line debug o

2019-07-28 22:23发布

是否有可能使用GDB或LLDB从终端命令行下的Mac OS X上的iPhone模拟器运行调试应用程序? (例如不是从Xcode的GUI或控制台,但使用外部的命令行或过程中)。 如果是这样,怎么样?

Answer 1:

你需要已有的应用程序在模拟器的跳板; 您无法启动从Xcode的模拟器中的应用程序,然后希望能有GDB的命令行实例附加到它。

所以:

  1. 运行iPhone模拟器,其已经得到您的应用程序进去。
  2. 在终端窗口:
    % gdb
    ...
    (gdb) attach --waitfor 'Name Of Your App'
  1. 从模拟器跳板启动您的应用程序。
  2. GDB应该附加到该进程之前 main()被执行。 所以,你可以设置一些断点,或什么的。 然后:
    (gdb) continue

对于程序lldb是类似的:

    % lldb
    (lldb) process attach -n 'Name Of Your App' --waitfor
    <launch your app in the simulator>
    (lldb) continue

我不知道为什么你会想要或需要做到这一点,但作为一个老的命令行GDB(和DBX)的家伙,我可以欣赏它。 :-)



文章来源: Terminal command-line debug of iOS Simulator apps?