0

Ubuntu 16,DPDK 16

我有几个基于 DPDK 的应用程序在两台机器之间发送数据包,并希望使用dpdk-pdump. 我正在运行它sudo ./build/app/pdump/dpdk-pdump -c 0x00f -- --pdump 'port=0,queue=*,rx-dev=/tmp/rx.pcap',我看到了这个输出和一个崩溃:

EAL: no driver found for eth_pcap_rx_0 EAL: Driver, cannot attach the device EAL: Error - exiting with code: 1 Cause: vdev creation failed:create_mp_ring_vdev:736

我的 DPDK 是这样编译的:(之前hostname:~/dpdk-stable-16.07.1/x86_64-native-linuxapp-gcc# CONFIG_RTE_LIBRTE_PMD_PCAP=y make也这样做过export CONFIG_RTE_LIBRTE_PMD_PCAP=y)以便它在 libpcap 支持下构建,正如文档所说的那样。我的系统安装了 libpcap。make 脚本输出显示== Build lib/librte_pdump. 在网上四处寻找,我只发现一个人有类似的问题,建议的解决方法是我尝试过的。我还有其他事情要做吗?

我尝试安装DPDK Ubuntu 软件包版本的工具并使用dpdk-pdump命令,结果相同。

4

2 回答 2

2

不幸的是,在命令行中设置 CONFIG_RTE_LIBRTE_PMD_PCAP=y 不起作用,所以编译后的 dpdk-pdump 不支持 pcap。

在 config/common_base 中设置 CONFIG_RTE_LIBRTE_PMD_PCAP=y,删除您的构建目录并重新编译 DPDK。

确保您的构建目录的 .config 文件具有 CONFIG_RTE_LIBRTE_PMD_PCAP=y

于 2017-06-05T09:41:31.370 回答
0

此外,如果您收到以下错误:

Error: missing pcap.h
rte_eth_pcap.c:19:18: fatal error: pcap.h: No such file or directory

在使用选项编译时CONFIG_RTE_LIBRTE_PMD_PCAP=y

安装 libpcap-dev* 包。例如:

yum install libpcap-devel
于 2019-12-12T20:51:49.480 回答