因為需要觀察 vhost-net 的行為,所以必須重新編譯 vhost-net module,然而想要直接用 Ubuntu 內建的 source,所以嘗試下載 Ubuntu 所自己維護的 linux-kernel 並只編譯 vhost-net module,才不會浪費太多時間。

本篇以 Ubuntu 13.04 為例,Ubuntu 13.04 用的是 linux-3.8.0

先安裝編譯核心必備的套件:

sudo apt-get build-dep linux-source-3.8.0

 

來抓 source code

apt-get source linux-source-3.8.0

 

apt-get 會為你解開,打好 patch ,放到 linux-3.8.0 的資料夾,我們直接切到要用的模組的資料夾,這篇以 vhost-net 為例:

cd linux-3.8.0/drivers/vhost

 

然後,重點來了,就是這個編譯指令:

make M=$PWD -C /lib/modules/`uname -r`/build

/lib/modules/`uname -r`/build 放的就是可以讓你編譯 module 的必備檔案,header files 之類的,還有會用到的 config、scripts 也是一應俱全。如此一來就可以很簡單的達到編譯特定模組的方法。

 

參考資料:http://fred-zone.blogspot.tw/2008/09/linux-module.html

arrow
arrow

    koukaipan 發表在 痞客邦 留言(0) 人氣()