1. 程式人生 > >Linux核心學習遇到的問題

Linux核心學習遇到的問題

(1)今天第一個遇到的比較棘手的問題就是編譯模組wr_thread

       WARNING: "mcount" [/home/ams/Music/test/kernel_test/wr_thread/wr_thread.ko]

解決的方法是升級了gcc 從gcc4.4 升級到gcc4.8 用的方法是 update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-4.8 255

 update-alternatives --config gcc  

(2)遇到的第二個問題是載入wr_thread.ko模組

          insmod: ERROR: could not insert module wr_thread.ko: Invalid module format

         發現時於編譯module用的核心於當前Ubuntu的核心版本不一致,當前版本是3.13 ,編譯時用的 是3.16,然後重新安裝3.16的核心,進入3.16的核心目錄

          make

make modules

make modules_install

make install

         然後重新啟動電腦,用uname -r 發現當前核心版本變為3.16

         重新載入核心模組wr_thread.ko

(3)遇到的第三個問題是載入wr_thread.ko時;

          用dmesg命令發現:

          wr_thread: module verification failed: signature and/or required key missing

          解決的辦法是加上核心簽名;

           # ../../linux-stable/scripts/sign-file sha512 ../../linux-stable/signing_key.priv ../../linux-stable/signing_key.x509 wr_thread.ko