Linux安裝DPDK并編譯運作helloworld
1.下載下傳安裝rhel8.1
- 采用linux版本是rhel8.1,系統自帶的python是3.6.8,會提示可以采用更高版本的python,但實際不影響,有需要自行百度
- https://developers.redhat.com/products/rhel/download
2.下載下傳dpdk-21.11.2.tar.xz
- https://core.dpdk.org/download/
3.更換yum
- 主要是因為後續需要下載下傳其他工具,但yum好像是要收費的;若系統中已有pip可跳過
- 參考部落格:https://blog.csdn.net/weixin_56483756/article/details/124185212
- 依次執行以下指令:
cd /etc/yum.repos.d
rm -rf ./* //擔心出問題可以先備份
wget -O /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-8.repo //確定聯網
yum -y clean all //這一步好像有些輸出,忘記截圖了,但不影響
yum -y makecache
4.安裝相關工具
- DPDK 較新版本已經支援 meson+ninja 的編譯方式,版本要求
meson 0.47.1+
ninja 1.7+
- 用pip3下載下傳,用系統自帶工具下載下傳可能會出現下載下傳的版本過低
- 參考部落格:https://blog.csdn.net/linggang_123/article/details/114137361
- 用yum安裝python3-pip
- 用pip3安裝meson,najia,pyelftools
5.建立共享檔案夾
- 用于将下載下傳好的dpdk-21.11.2.tar.xz移動到虛拟機上,也可以通過其他方式,或者直接在虛拟機上下載下傳;(自行百度)
- 參考部落格:https://blog.csdn.net/gl2538171963/article/details/124428552
- 将dpdk-21.11.2.tar放入共享檔案夾後,可在虛拟機的/mnt/hgfs/共享檔案名稱 找到,再移到home目錄(我想安裝在home目錄下,看個人喜好)
6.安裝dpdk
- 參考部落格:https://blog.csdn.net/chouuik/article/details/122566953
- 依次執行以下指令
meson build
ninja -C build
sudo ninja -C build install
sudo ldconfig
7.手動連結dpdk的lib目錄連結到ldconfig下
- 這一步是為了解決dpdk運作樣例時找不到.so檔案,參考部落格給出兩種方法,感興趣可自己看
- 參考部落格:https://blog.csdn.net/linggang_123/article/details/114137361
- 在目錄/etc/ld.so.conf.d/下建立檔案:dpdk-ling.conf
- 檔案内容:/home/dpdk/build/lib (檔案内容要根據自己dpdk的安裝目錄,dpdk解壓後的檔案夾帶版本名,我給重命名成dpdk了)
8.設定庫查找路徑
export PKG_CONFIG_PATH=/usr/local/lib64/pkgconfig
ldconfig
//可用以下指令檢測:一切順利的話,會顯示DPDK版本号
pkg-config --modversion libdpdk
9.編譯運作helloworld樣例
cd /home/dpdk/examples/helloworld //根據自己的安裝目錄
make
./build/helloworld --no-huge //因為還沒配置大頁 需加參數--no-huge
- 一切順利的話就可以啦,不順利就自己慢慢百度吧
-
Linux安裝DPDK并編譯運作helloworld
10.題外話:更換鏡像源
pip3 install pyelftools -i http://pypi.doubanio.com/simple/ --trusted-host pypi.doubanio.com
- http://mirrors.aliyun.com/pypi/simple/ 阿裡雲
- https://pypi.mirrors.ustc.edu.cn/simple/ 中國科技大學
- http://pypi.mirrors.ustc.edu.cn/simple/ 中國科學技術大學
- https://pypi.tuna.tsinghua.edu.cn/simple/清華大學
- http://pypi.douban.com/simple/ 豆瓣
- 失敗的時候試試能不能ping通,我自己虛拟機不知道為啥有時候突然就識别不了域名了,重新開機一下就好了。是以建議不能下載下傳的時候,建議ping一下www.baidu.com,可以ping通的話就不是網絡問題。