可以使用C++编写DPDK应用程序,如果可以,它是如何完成的?
问题描述:
你好网上的人,可以使用C++编写DPDK应用程序,如果可以,它是如何完成的?
而不是在C编写DPDK应用程序我想使用C++。有没有办法做到这一点?
我可能应该提到,配置,编译和设置DPDK本身和与之相关的所有内容(绑定NIC,...)工作得很好。除了编译和运行示例应用程序和使用C语言编写的应用程序之外,我还希望在新的DPDK应用程序中使用另一个项目中的一些C++类,因此使用C++而不是C 。
谢谢。
答
DPDK愿与C++代码混合,因为每个DPDK头已经有:
#ifdef __cplusplus
extern "C" {
#endif
来源:http://dpdk.org/browse/dpdk/tree/lib/librte_eal/common/include/rte_eal.h#n49
还有用C++编写,并使用DPDK许多开源项目。仅举几例:
- Trex公司:https://github.com/cisco-system-traffic-generator/trex-core
- MoonGen:https://github.com/emmericp/MoonGen
所以,请看看究竟怎么了DPDK获得这些项目的一个与C++代码集成。
extern“C”{/ * prototypes * /} https://isocpp.org/wiki/faq/mixing-c-and-cpp –