dpdk18.11开发库编译安装

简介

dpdk官网

安装

下载

点击下载地址,选择合适的版本下载。这里下载DPDK 18.11.0 (LTS)版本。

 编译

将下载的dpdk-18.11.tar.xz上传服务器,解压,这里放在了/opt目录下

[root@localhost dpdk-18.11]# pwd
/opt/dpdk-18.11
[root@localhost dpdk-18.11]# ls
app         config    doc      examples     kernel  license      Makefile     meson_options.txt  pkg     test
buildtools  devtools  drivers  GNUmakefile  lib     MAINTAINERS  meson.build  mk                 README  usertools
[root@localhost dpdk-18.11]#

编译前确保numa库已经安装。使用 yum install numactl-devel 或者 apt install libnuma-dev 安装。

配置

设置环境变量

RTE_SDK是代码顶层目录

RTE_TARGET是选择编译平台,这里是64位linux系统,使用gcc编译。

export RTE_SDK=/opt/dpdk-18.11
export RTE_TARGET=x86_64-native-linuxapp-gcc

使能libpcap

sed -ri 's,(PMD_PCAP=).*,\1y,' config/common_base
make config T=$RTE_TARGET

编译安装

DESTDIR是安装目录

make -j 10 install T=$RTE_TARGET DESTDIR=/usr/local

如果设置了DESTDIR的环境变量,命令行上也可以不加这个参数,上面的命令可以写成

export DESTDIR=/usr/local
make -j 10 install T=$RTE_TARGET

注意,设置了T参数没有设置DESTDIR参数或者环境变量时,是不会安装的。

如果没有T参数和DESTDIR参数或者环境变量,默认安装到/usr/local下面。

编译最后会有如下打印信息,表示安装完成。

Build complete [x86_64-native-linuxapp-gcc]
================== Installing /usr/local/
Installation in /usr/local/ complete

验证

静态库:在/usr/local/lib下面可以看到libdpdk.a以及所有以librte_开头的文件

头文件在/usr/local/include/dpdk目录下

进行编译自己写的dpdk程序时,在Makefile中要加入头文件目录  -I/usr/local/include/dpdk 

原文地址:https://www.cnblogs.com/yanhai307/p/10598138.html