c++ - 错误:使用 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)
您能否让我知道如何解决此错误。
谢谢,
解决方案
DPDK in version 18.08 doesn't have the rte_pci_device struct: https://doc.dpdk.org/api-18.08/rte__pci_8h.html
You were probably using a wrong documentation version.
推荐阅读
- javascript - 如何使用javascript中的匿名函数获取数据并将其存储在变量中
- python - Python Pandas:在大型 DF 中找到局部最大值的最佳方法
- sql - 如何在标准 SQL (BigQuery) 中获取会话持续时间
- javascript - 如何直接在猫鼬的嵌套地图中设置值
- python - 如何从 python 脚本转发到 rds 实例
- sql-server - 如何动态读取多个存储过程的查询执行计划
- swiftui - SwiftUI:如何让搜索栏成为第一响应者?
- react-native - 如何在 react-native expo 中将资产库:// 转换为文件://?
- python - 有没有办法或例子用 ply 和 ast 创建抽象的 sytanx 树?
- android - 无法在颤振中创建捆绑包