1. 程式人生 > >linux核心除錯環境搭建

linux核心除錯環境搭建

版本linux4.17 ubuntu18.04
先給系統至少80G記憶體
1。編譯核心
先配置檔案
make mrproper
make menuconfig
我這裡需要的依賴有

 sudo apt install make cmake gcc g++ clang
 sudo apt-get install libncurses5-dev libncursesw5-dev
 sudo apt install ncurses-dev
 sudo apt-get install bison
 sudo apt-get install flex
 sudo apt-get install linux-libc-dev:amd64
 sudo apt-get install libssl-dev

然後視窗調大點
linux核心除錯環境搭建
開啟相關選項:(我看了下好像全預設開啟)
https://blog.csdn.net/ztguang/article/details/52410562
linux核心除錯環境搭建
linux核心除錯環境搭建

 Kernel: arch/x86/boot/bzImage is ready  (#1)
FATAL: drivers/scsi/am53c974.o has no symtab?
scripts/Makefile.modpost:92: recipe for target '__modpost' failed
Makefile:972: "Cannot use CONFIG_STACK_VALIDATION=y, please install libelf-dev

sudo apt install libelf-dev
換核心就先修改:
sudo gedit /etc/default/grub
註釋第二行:
linux核心除錯環境搭建
更新
sudo update-grub2
linux核心除錯環境搭建
///////////////////////
第一步建立串列埠通訊
linux核心除錯環境搭建
測試
linux核心除錯環境搭建
開啟除錯環境
開啟 /boot/grub2/grub.cfg 檔案,選擇需要啟動的核心版本,在尾部添kgdbwait kgdboc=ttyS0,115200
第一個選單
linux核心除錯環境搭建
對應
linux核心除錯環境搭建
第二個選單
linux核心除錯環境搭建
對應
linux核心除錯環境搭建
根據需要核心版本自定義設定
這裡預設第一個選單對一項
重啟系統會斷下
linux核心除錯環境搭建
除錯機
進入系統原始碼目錄
gdb vmlinux
linux核心除錯環境搭建
set remotebaud 115200 目前其實沒有用
target remote /dev/ttyS0
還是有點問題 後面再說
linux核心除錯環境搭建
https://blog.csdn.net/ztguang/article/details/52410562


https://blog.csdn.net/u013470224/article/details/51314231
https://blog.csdn.net/swingwang/article/details/72331196