ошибка: разыменование указателя на неполный тип с помощью dpdk 18.08

Я получаю ниже ошибки компиляции в memcmp. Исходный код вставлен ниже ошибки:

: error: dereferencing pointer to incomplete type
if((memcmp((const void *)&pci_dev->addr,(const void *)&Input[iLoop].guestpci,sizeof(pci_dev->addr))==0) && (memcmp((const void *)&gBtgData.nic_port[port].mac_addr,(const void *)&Input[iLoop].mac_addr,sizeof(gBtgData.nic_port[port].mac_addr))==0))
^
: error: dereferencing pointer to incomplete type
if((memcmp((const void *)&pci_dev->addr,(const void *)&Input[iLoop].guestpci,sizeof(pci_dev->addr))==0) && (memcmp((const void *)&gBtgData.nic_port[port].mac_addr,(const void *)&Input[iLoop].mac_addr,sizeof(gBtgData.nic_port[port].mac_addr))==0))
^

Код:

struct rte_eth_dev_info dev_info;
const struct rte_pci_device *pci_dev;
rte_eth_dev_info_get(port, &dev_info);
pci_dev = RTE_DEV_TO_PCI(dev_info.device);memcmp((const void *)&pci_dev->addr,(const void *)&Input[iLoop].guestpci,sizeof(pcii
_dev->addr))==0) && (rte_memcmp((const void *)&gBtgData.nic_port[port].mac_addr,(const void *)&Input[iLoop]..
mac_addr,sizeof(gBtgData.nic_port[port].mac_addr))==0)

Не могли бы вы дать мне знать, как исправить эту ошибку.

Спасибо,

0

Решение

DPDK в версии 18.08 не имеет структуры rte_pci_device:
https://doc.dpdk.org/api-18.08/rte__pci_8h.html

Возможно, вы использовали неправильную версию документации.

0

Другие решения

Я включил заголовки, rte_pci.h и rte_dev.h. Я не уверен, в чем проблема.

-1

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector