1. 程式人生 > >使用eclipse 除錯QEMU

使用eclipse 除錯QEMU

程式碼索引:
    程式碼索引就是檢視原始碼的時候,定義過的變數、函式或者巨集等等都可以通過跳轉(快捷鍵F3)找到定義原型。就是sourec insight 的同步功能,source insight 的索引(同步)功能是非常強大的,所以正是很多人喜歡用它看原始碼的原因。
    使用eclipse的時候發現程式碼索引不全面,有些定義過的巨集或函式按F3卻找不到原型,有些又可以。需要調整一下索引選項,讓它索引得更全面些。
    window->preference->C/C++->Index (調整裡面的選項,讓它搜尋更全面些,代價是花更多的時間咯,不同版本eclipse選項不同)。
為了使eclipse執行更快也可以關閉:
   window->Preferences->C/C++ -> Indexer中,將預設的Fast c/c++ indexer改為No indexer。

自動編譯:
   Linux原始碼size太大,設定workspace全域性禁止使用eclipse去給程式碼做自己主動build。索引能夠仍然交由eclipse來做,這樣方便在eclipse中進行搜尋及程式碼導航。
   - Preferences -> Generl -> Workspace -> Build automatically (Disable)

   使用eclipse除錯核心


基於QEMU除錯核心:
1、先使用qemu的-s引數啟動虛機核心的除錯監聽
2, 建立一個debug啟動器(Debug configurations -> C/C++ Remote Application)
   選擇GDB(DSF) Manual Remote Debugging Launcher
   Main TAB -> -C/C++ Application指向實際uncompress kernel: /bak/linux/linux-2.6/vmlinux
   Main TAB -> -Disable auto build
   Debugger TAB -> Stop on startup at 'start_kernel'
   Debugger TAB -> connection -> Host Name or IP Address -> = localhost
   Debugger TAB -> connection -> Port number = 1234

 除錯QEMU本身(沙箱系統)
 1、直接在debug configration中設定qumu的程序路徑指向程序檔案就可以了。