簡體   English   中英

來自腳本的 LLDB make 命令

[英]LLDB make command from script

我創建了step-scripted為我打印調試器調用的函數的名稱。

現在我想自動化我需要輸入的部分: thread step-scripted -C MyTrace.Trace

如何從腳本運行上述命令?

所以我會做這樣的事情:

script
while True:
    thread step-scripted -C MyTrace.Trace

首先,步驟計划沒有理由只做一個步驟。 如果你想永遠跨步,那么should_stop步驟計划去做——永遠不要將計划設置為完成,並從should_stop返回 false 。 更方便的是,如果您使用的是最近的 lldb,您可以使用-k <key> -v <value>參數將參數傳遞給您的腳本化步驟計划。 所以你也可以讓你的計划接受“計數”輸入,並多次執行。

否則,最簡單的方法是使用 Python 接口來實現自動執行此步驟的自定義命令。 SBThreads 是你要踩的東西。 如果您使用采用 SBExecutionContext 的命令形式,如下所述:

https://lldb.llvm.org/use/python-reference.html#id6

您可以從SBExecutionContext.thread獲取線程,然后使用SBThread. StepUsingScriptedThreadPlan SBThread. StepUsingScriptedThreadPlan調用您的線程計划來執行該步驟。 一旦你在 python 中,編寫一個循環來永遠或直到某些條件等應該很容易。 您的命令也可能需要多次執行,等等。

請注意,如果您覺得更容易,您還可以使用SBCommandInterpreter.HandleCommand在腳本解釋器中運行命令。

暫無
暫無

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

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