ffx debug connect
指令會啟動 Fuchsia 偵錯工具 (稱為 zxdb
),以便在裝置上對 Fuchsia 元件進行偵錯。
概念
zxdb
是 Fuchsia 專屬的偵錯工具,可讓您附加在裝置上執行的 Fuchsia 元件。元件連結至 zxdb
後,您就可以執行互動式偵錯作業,例如新增中斷點、逐步執行程式碼,以及檢查元件的堆疊追蹤和變數。
為了讓 zxdb
瞭解及解壓縮 Fuchsia 元件的程式碼,您必須在開發環境中提供元件的偵錯符號。如要進一步瞭解偵錯符號,請參閱「註冊偵錯符號」。
執行 ffx debug connect
指令時,系統會建立與 Fuchsia 裝置的連線,並在主機上啟動 zxdb
終端機。在這個終端機中,您可以使用 zxdb
指令,以互動方式對裝置上執行的 Fuchsia 元件進行偵錯。
執行 Fuchsia 偵錯工具
如要啟動 Fuchsia 偵錯工具,請執行下列指令:
ffx debug connect
成功連線至 Fuchsia 裝置後,這個指令會啟動 zxdb
終端機,例如:
$ ffx debug connect
Connecting (use "disconnect" to cancel)...
Connected successfully.
👉 To get started, try "status" or "help".
[zxdb]
在 zxdb
終端機中,您可以開始執行互動式偵錯作業。以下範例顯示 zxdb
已附加至 memory_monitor
元件,並在元件的 main
函式中建立中斷點:
[zxdb] attach memory_monitor.cm
Waiting for process matching "memory_monitor.cm".
Type "filter" to see the current filters.
Attached Process 1 state=Running koid=47467 name=memory_monitor.cm
[zxdb] process
# State Koid Name
▶ 1 Running 47467 memory_monitor.cm
[zxdb] break $main
Created Breakpoint 1 @ $main
48
◉ 49 int main(int argc, const char** argv) {
50 auto command_line = fxl::CommandLineFromArgcArgv(argc, argv);
[zxdb]
如要退出 zxdb
終端機,請輸入 exit
或按下 Ctrl-D
鍵。
如要進一步瞭解 zxdb
的用途和最佳做法,請參閱 zxdb
使用手冊。