Closed annp1987 closed 3 years ago
@annp1987 why are you using --disable-ft-dl ?
@cardigliano : my application build on top of ndpi and pf_ring ft same as the issue: https://github.com/ntop/PF_RING/issues/441. Everything work fine after I update latest source code of pf_ring.
Can we close this issues then?
Sorry, I mean that everything work fine before I update latest source code of pf_ring.
@annp1987 please update to latest code from git and use ./configure --disable-ft-dl --enable-ndpi
It worked fined. Thank you so much.
Hi @cardigliano,
I have installed nDPI into /usr/local/lib/ndpi by compile from source code as below: ./autogen.sh ./configure --prefix=/usr/local make && make install && ldconfig
With latest source code of pf_ring, I install pf_ring ft lib as below: cd lib && ./configure --disable-ft-dl && make && make install && ldconfig then try to compile example_ft, I got error like below:
make gcc -O2 -DHAVE_PF_RING -Wall -Wno-unused-function -Wno-format-truncation -Wno-address-of-packed-member -I../../kernel -I../lib -I../libpcap -Ithird-party
../lib/pfring_config --include-D HAVE_PF_RING_FT -c ftflow.c -o ftflow.o gcc -O2 -DHAVE_PF_RING -Wall -Wno-unused-function -Wno-format-truncation -Wno-address-of-packed-member -I../../kernel -I../lib -I../libpcap -Ithird-party
../lib/pfring_config --include-D HAVE_PF_RING_FT ftflow.o ../libpcap/libpcap.a ../lib/libpfring.a ../libpcap/libpcap.a ../lib/libpfring.a
../lib/pfring_config --libs`../libpcap/pcap-config --additional-libs --static
-lpthread -lrt -ldl -lnl-genl-3 -lnl-3 -lrt -lm -o ftflow ../lib/libpfring.a(pfring_ft_dpi.o): In functionpfring_ft_dpi_alloc': pfring_ft_dpi.c:(.text+0x35): undefined reference to
ndpi_get_api_version' pfring_ft_dpi.c:(.text+0x42): undefined reference tondpi_init_detection_module' pfring_ft_dpi.c:(.text+0xa0): undefined reference to
ndpi_set_protocol_detection_bitmask2' pfring_ft_dpi.c:(.text+0xa8): undefined reference tondpi_finalize_initalization' pfring_ft_dpi.c:(.text+0xb9): undefined reference to
ndpi_revision' pfring_ft_dpi.c:(.text+0xc1): undefined reference tondpi_get_api_version' ../lib/libpfring.a(pfring_ft_dpi.o): In function
pfring_ft_dpi_giveup_and_guess': pfring_ft_dpi.c:(.text+0x133): undefined reference tondpi_detection_giveup' ../lib/libpfring.a(pfring_ft_dpi.o): In function
pfring_ft_ndpi_detection_process_packet': pfring_ft_dpi.c:(.text+0x181): undefined reference tondpi_detection_process_packet' ../lib/libpfring.a(pfring_ft_dpi.o): In function
pfring_ft_dpi_get_protocol_name_by_id': pfring_ft_dpi.c:(.text+0x1d6): undefined reference tondpi_protocol2name' ../lib/libpfring.a(pfring_ft_dpi.o): In function
pfring_ft_dpi_guess_undetected_protocol': pfring_ft_dpi.c:(.text+0x234): undefined reference tondpi_guess_undetected_protocol' ../lib/libpfring.a(pfring_ft_dpi.o): In function
pfring_ft_dpi_detection_giveup': pfring_ft_dpi.c:(.text+0x26f): undefined reference tondpi_detection_giveup' ../lib/libpfring.a(pfring_ft_dpi.o): In function
pfring_ft_dpi_free': pfring_ft_dpi.c:(.text+0x111): undefined reference tondpi_exit_detection_module' ../lib/libpfring.a(pfring_ft_dpi.o): In function
pfring_ft_ndpi_extra_dissection_possible': pfring_ft_dpi.c:(.text+0x191): undefined reference tondpi_extra_dissection_possible' ../lib/libpfring.a(pfring_ft_dpi.o): In function
pfring_ft_dpi_get_protocol_id_by_name': pfring_ft_dpi.c:(.text+0x1a1): undefined reference tondpi_get_proto_by_name' ../lib/libpfring.a(pfring_ft_dpi.o): In function
pfring_ft_dpi_detection_get_sizeof_ndpi_flow_struct': pfring_ft_dpi.c:(.text+0x201): undefined reference tondpi_detection_get_sizeof_ndpi_flow_struct' ../lib/libpfring.a(pfring_ft_dpi.o): In function
pfring_ft_dpi_detection_get_sizeof_ndpi_id_struct': pfring_ft_dpi.c:(.text+0x211): undefined reference tondpi_detection_get_sizeof_ndpi_id_struct' ../lib/libpfring.a(pfring_ft_dpi.o): In function
pfring_ft_dpi_free_flow': pfring_ft_dpi.c:(.text+0x241): undefined reference tondpi_free_flow' ../lib/libpfring.a(pfring_ft_dpi.o): In function
pfring_ft_dpi_check_flow_func': pfring_ft_dpi.c:(.text+0x251): undefined reference tondpi_check_flow_func' ../lib/libpfring.a(pfring_ft_dpi.o): In function
pfring_ft_dpi_network_ptree_match': pfring_ft_dpi.c:(.text+0x281): undefined reference tondpi_network_ptree_match' ../lib/libpfring.a(pfring_ft_dpi.o): In function
pfring_ft_dpi_guess_protocol_id': pfring_ft_dpi.c:(.text+0x2a3): undefined reference tondpi_guess_protocol_id' ../lib/libpfring.a(pfring_ft_dpi.o): In function
pfring_ft_dpi_get_num_supported_protocols': pfring_ft_dpi.c:(.text+0x2b1): undefined reference tondpi_get_num_supported_protocols' ../lib/libpfring.a(pfring_ft_dpi.o): In function
pfring_ft_dpi_load_protocols': pfring_ft_dpi.c:(.text+0x2c1): undefined reference tondpi_load_protocols_file' ../lib/libpfring.a(pfring_ft_dpi.o): In function
pfring_ft_dpi_load_categories': pfring_ft_dpi.c:(.text+0x2d1): undefined reference tondpi_load_categories_file' collect2: error: ld returned 1 exit status Makefile:63: recipe for target 'ftflow' failed make: *** [ftflow] Error 1
More information, I can compile and run example_ft successfully with older source code of PF_FING at commit: 8979395114b51059b7dfaae115c0f31cba56a271
Could you please give me some advice?
Thank you in advance,