Xcode未读取当前工作目录中的项目特定.lldbinit

huwehgph  于 2022-11-26  发布在  其他
关注(0)|答案(4)|浏览(194)

我想设置项目特定的.lldbinit文件,以便“所有内容”都在版本控制之下,并在新计算机中轻松设置。但是,似乎我只能读取~/.lldbinit文件,而不能读取任何~/git/project/.lldbinit文件。
LLDB手册上说:
lldb将在启动时从三个文件中读取设置/别名/命令(如果存在)。

首先,它将读取一个~/.lldbinit-debugger命令文件。如果您使用的是lldb命令行界面,这将是~/.lldbinit-lldb。如果您在GUI调试器(如Xcode)中使用lldb,这将是~/.lldbinit- Xcode。这是一个很有用的位置,可以放置您希望仅在使用给定lldb命令解释器时应用的设置。
第二个,读取了~/.lldbinit。
第三个,将读取当前工作目录(启动lldb的位置)中的.lldbinit文件。

所以我的问题是:如何设置Xcode或项目使用“第三个”选项,即从当前工作目录读取.lldbinit文件?如何检查或更改Xcode的“当前工作目录”?

yhived7q

yhived7q1#

Xcode现在(使用公共Xcode 12编写)支持设置scheme级别的LLDB Init File。这可以在scheme的Run阶段的Info标签中完成。
1.在Xcode中打开项目。

  1. ⌘ + Shift + ,打开方案编辑器。
    1.选择运行,然后选择信息选项卡。
  • 编辑LLDB Init File值。
  • 使用$(PROJECT_DIR)来指涉包含项目的目录。
  • 使用$(SRCROOT)引用目标的源根目录。

o2rvlv0m

o2rvlv0m2#

这是一个工作目录,你可以在其中启动任何加载LLDB框架的进程。Xcode没有一个有用的工作目录(我上次看的时候是/),所以你不能真正使用cwd版本。
Xcode项目特定lldb设置的一个解决方案(在许多情况下都有效)是在main上放置一个符号断点,将其设置为自动继续,然后在该断点的断点命令中放置所需的设置。
如果Xcode有一些UI来指定特定于目标的lldbinit文件,那也很好。

rkttyhzu

rkttyhzu3#

https://github.com/alloy/lldb-is-it-not上现在有一个“Xcode plugin to load project specific .lldbinit”(加载特定项目的Xcode插件)

h22fl7wq

h22fl7wq4#

Xcode现在支持Target特定的lldb init文件。在Xcode target的Run scheme中有一个文件路径的输入表单。

相关问题