dpdk的安装

  • 下载稳定的dpdk库
    wget https://fast.dpdk.org/rel/dpdk-17.11.4.tar.xz
  • 解压
    tar xvJf dpdk-17.11.4.tar.xz
  • 设置环境变量
export RTE_SDK=`pwd`
export RTE_TARGET=x86_64-native-linuxapp-gcc
  • 提前安装需要的库函数
yum install numactl-devel
yum install -y kernel-devel kernel-headers
yum install kernel.x86_64 -y

  • 运行方式有两种
    第一种:命令行运行dpdk
    make install T=x86_64-native-linuxapp-gcc
    第二种:通过脚本运行
cd dpdk/usertools
./dpdk-setup.sh

然后根据服务器类型和网卡类型选择就可以
第一步: x86_64-native-linuxapp-gcc
第二步: Insert IGB UIO module
第三步: Setup hugepage mappings for NUMA systems
第四步: Bind Ethernet/Crypto device to IGB UIO module

但是遇到问题1:

/bin/sh:行1: cc: 未找到命令
cat: /root/dpdk-stable-17.11.4/x86_64-native-linuxapp-gcc/x86_64-native-linuxapp-gcc/.config_tmp: 没有那个文件或目录
Configuration done using x86_64-native-linuxapp-gcc
/root/dpdk-stable-17.11.4/mk/rte.vars.mk:84: *** RTE_ARCH is not defined。 停止。
make[3]: *** [all] 错误 2
make[2]: *** [pre_install] 错误 2
make[1]: *** [install] 错误 2
make: *** [install] 错误 2

/bin/sh: cc: 未找到命令 ,已解决
原因没有安装gcc
在线安装gcc即可

yum install gcc-c++ -y

然后就可以继续安装了

遇到问题2: 安装IGB UIO module遇到的问题
kernel版本不匹配
查看安装的kernel版本:

ls /usr/src/kernels/

查看我的版本 uname -r
rpm命令查看我所安装的内核版本 rpm -qa kernel
然后进行调整,具体可以参考

然后就可以运行dpdk自带的example中的样例了
如何运行example中的样例呢:

cd examples/helloworld/
make
./build/helloworld
image.png

你可能感兴趣的:(dpdk的安装)