我在memcmp中遇到以下编译错误。源代码粘贴在错误下方:
STDOUT_FILENO
代码:
: 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))
^
请让我知道如何解决此错误。
谢谢
答案 0 :(得分:0)
18.08版中的DPDK没有rte_pci_device结构: https://doc.dpdk.org/api-18.08/rte__pci_8h.html
您可能使用了错误的文档版本。
答案 1 :(得分:-1)
我已经包含了头文件rte_pci.h和rte_dev.h。我不确定是什么问题。