max197616 / extfilter

Program for filtering traffic using DPDK.
GNU General Public License v3.0
81 stars 33 forks source link

Не получается собрать на Centos 7 #13

Closed Cramac closed 6 years ago

Cramac commented 6 years ago

Приветствую. Проблема сборки есть: dpdk-18.08 poco-1.9.0 extfilter клон из гита Linux localhost 3.10.0-862.14.4.el7.x86_64 #1 SMP Wed Sep 26 15:12:11 UTC 2018 x86_64 x86_64 x86_64 GNU/Linux

dpdk и poco собрались вроде без ошибок extfilter после ./configure -with-dpdk_home=/usr/src/dpdk-18.08 --with-dpdk_target=build --enable-native-code выдал

extFilter 0.99a configuration:

HOST: CXX: g++ CXXFLAGS: -std=c++11 -O3 -Wall -fno-stack-protector -pthread -march=native -mtune=native -mpopcnt -mavx2 LDFLAGS: PREFIX: /usr/local

NATIVE: yes SSE2: yes SSE3: yes SSSE3: yes SSE4.1: yes SSE4.2: yes SSE4a: yes AVX: yes AVX2: yes POPCNT: yes

[root@localhost extfilter]#

а вот make выдает

[root@localhost extfilter]# make Making all in src make[1]: Entering directory /usr/src/extfilter/src' g++ -DHAVE_CONFIG_H -I. -I../include -I/usr/src/dpdk-18.08/build/include -I.././peafowl/src -I.././marisa/include -march=native -mtune=native -std=c++11 -O3 -Wall -fno-stack-protector -pthread -march=native -mtune=native -mpopcnt -mavx2 -MT main.o -MD -MP -MF .deps/main.Tpo -c -o main.o main.cpp main.cpp: In member function ‘int extFilter::initSenderPort(uint8_t, ether_addr*, uint8_t)’: main.cpp:258:18: error: ‘struct rte_eth_rxmode’ has no member named ‘header_split’ portConf.rxmode.header_split = DPDK_CONFIG_HEADER_SPLIT; ^ main.cpp:259:18: error: ‘struct rte_eth_rxmode’ has no member named ‘hw_ip_checksum’ portConf.rxmode.hw_ip_checksum = DPDK_CONFIG_HW_IP_CHECKSUM; ^ main.cpp:260:18: error: ‘struct rte_eth_rxmode’ has no member named ‘hw_vlan_filter’ portConf.rxmode.hw_vlan_filter = DPDK_CONFIG_HW_VLAN_FILTER; ^ main.cpp:264:18: error: ‘struct rte_eth_rxmode’ has no member named ‘hw_strip_crc’ portConf.rxmode.hw_strip_crc = DPDK_CONFIG_HW_STRIP_CRC; ^ main.cpp: In member function ‘int extFilter::initPort(uint8_t, ether_addr*, bool)’: main.cpp:340:18: error: ‘struct rte_eth_rxmode’ has no member named ‘header_split’ portConf.rxmode.header_split = DPDK_CONFIG_HEADER_SPLIT; ^ main.cpp:341:18: error: ‘struct rte_eth_rxmode’ has no member named ‘hw_ip_checksum’ portConf.rxmode.hw_ip_checksum = DPDK_CONFIG_HW_IP_CHECKSUM; ^ main.cpp:342:18: error: ‘struct rte_eth_rxmode’ has no member named ‘hw_vlan_filter’ portConf.rxmode.hw_vlan_filter = DPDK_CONFIG_HW_VLAN_FILTER; ^ main.cpp:360:18: error: ‘struct rte_eth_rxmode’ has no member named ‘hw_strip_crc’ portConf.rxmode.hw_strip_crc = DPDK_CONFIG_HW_STRIP_CRC; ^ main.cpp: In member function ‘virtual void extFilter::initialize(Poco::Util::Application&)’: main.cpp:920:14: warning: ‘uint16_t rte_eth_dev_count()’ is deprecated (declared at /usr/src/dpdk-18.08/build/include/rte_ethdev.h:1398) [-Wdeprecated-declarations] _nb_ports = rte_eth_dev_count(); ^ main.cpp:920:32: warning: ‘uint16_t rte_eth_dev_count()’ is deprecated (declared at /usr/src/dpdk-18.08/build/include/rte_ethdev.h:1398) [-Wdeprecated-declarations] _nb_ports = rte_eth_dev_count(); ^ make[1]: *** [main.o] Error 1 make[1]: Leaving directory/usr/src/extfilter/src' make: *** [all-recursive] Error 1 [root@localhost extfilter]#

Как поправить?

max197616 commented 6 years ago

Пока не поддерживается DPDK 18.08.