簡體   English   中英

lldb breakpoint set命令失敗

[英]lldb breakpoint set command fails

我正在嘗試使用lldb的程序化斷點設置。 該命令是:

(lldb) breakpoint set -r . -s <product-name>
Breakpoint 25: no locations (pending).
WARNING:  Unable to resolve breakpoint to any actual locations.

如您所見,它向我拋出警告,說它無法解析斷點的位置。 我正在使用調試方案而不進行優化來運行我的項目。

是什么導致此警告?

如果<product-name>是共享庫,則可能尚未加載。 采用:

(lldb) image list <product-name>

核實。 如果是這種情況,請放心,在加載庫時,lldb將解析斷點。

您可能還具有與lldb不同的<product-name>拼寫,例如MyApp.app的模塊名稱實際上是“ MyApp”。 嘗試在您知道在<product-name>的名稱上設置斷點,然后執行break list ,輸出將具有:

1.1 where = ModuleName`symbol_name...

您要傳遞給-s的是ModuleName。

請注意,如果您知道的符號名稱上的斷點無法解析到任何位置,則可能在調試之前要剝離二進制文件。 您可以通過找到二進制文件( image list也會告訴您)來驗證這一點,然后在Terminal中運行:

$ nm -ap <PathToBinary>

如果您在此處看不到任何輸出,則說明二進制文件已被剝離。 您需要弄清楚誰在這樣做,並讓他們停止...

嗯,看起來像您在尋找功能

我的猜測是找不到。

在古老的Macsbug時代,圓點代表了當前的PC,但在lldb中不起作用。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM