Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/cmake/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Macos 如何进入libc++;使用lldb在Mac OSX上编写代码?_Macos_Lldb - Fatal编程技术网

Macos 如何进入libc++;使用lldb在Mac OSX上编写代码?

Macos 如何进入libc++;使用lldb在Mac OSX上编写代码?,macos,lldb,Macos,Lldb,我用调试符号编译了我的应用程序。当使用lldb连接到应用程序并进入(例如)cxathrow时,我看不到libc++abi.dylib的源代码。我做错了什么?您确实得到了一些关于STL的调试信息,因为许多STL代码都在编译到应用程序中的头文件中。但是您没有实际编译到libc++abi.dylib中的代码的调试信息,因为苹果没有为系统库分发dSYM__cxa_throw实际上是库中的一个函数 作为一个单独的问题,因为大多数人实际上不想进入STL代码,所以lldb有一个设置: (lldb) set s

我用调试符号编译了我的应用程序。当使用lldb连接到应用程序并进入(例如)cxathrow时,我看不到libc++abi.dylib的源代码。我做错了什么?

您确实得到了一些关于STL的调试信息,因为许多STL代码都在编译到应用程序中的头文件中。但是您没有实际编译到libc++abi.dylib中的代码的调试信息,因为苹果没有为系统库分发dSYM__cxa_throw实际上是库中的一个函数

作为一个单独的问题,因为大多数人实际上不想进入STL代码,所以lldb有一个设置:

(lldb) set show target.process.thread.step-avoid-regexp
target.process.thread.step-avoid-regexp (regex) = ^[^ ]+ std::|^std::

这将导致单步执行从STL中人工跳过代码。通过将该值设置为“”,可以撤消此操作。这将使您在单步执行时进入内联代码。

您确实可以获得STL的一些调试信息,因为许多STL代码都位于编译到应用程序中的头文件中。但是您没有实际编译到libc++abi.dylib中的代码的调试信息,因为苹果没有为系统库分发dSYM__cxa_throw实际上是库中的一个函数

作为一个单独的问题,因为大多数人实际上不想进入STL代码,所以lldb有一个设置:

(lldb) set show target.process.thread.step-avoid-regexp
target.process.thread.step-avoid-regexp (regex) = ^[^ ]+ std::|^std::

这将导致单步执行从STL中人工跳过代码。通过将该值设置为“”,可以撤消此操作。这将使您在单步执行时进入内联代码。

撤消该设置的命令:
set target.process.thread.step-avoid-regexp”“
撤消该设置的命令:
set target.process.thread.step-avoid-regexp”“