Bug 30 - Compilation error while disabling crypto device library
Summary: Compilation error while disabling crypto device library
Status: RESOLVED WONTFIX
Alias: None
Product: DPDK
Classification: Unclassified
Component: cryptodev (show other bugs)
Version: 18.02
Hardware: x86 All
: Normal minor
Target Milestone: ---
Assignee: Wisam Jaddo
URL:
Depends on:
Blocks:
 
Reported: 2018-05-02 09:28 CEST by Wisam Jaddo
Modified: 2020-06-18 22:20 CEST (History)
4 users (show)



Attachments

Description Wisam Jaddo 2018-05-02 09:28:45 CEST
How to reproduce:

Just set crypto lib to be no instead of yes:
"""
CONFIG_RTE_LIBRTE_CRYPTODEV=n
"""

Then compile.
The compilation error log:
"""
/download/dpdk/lib/librte_security/rte_security.h:57:24: fatal error: rte_crypto.h: No such file or directory
compilation terminated.
/download/dpdk/mk/internal/rte.compile-pre.mk:114: recipe for target 'rte_security.o' failed
make[5]: *** [rte_security.o] Error 1
make[5]: *** Waiting for unfinished jobs....
  CC rte_distributor_match_sse.o
  CC rte_pdump.o
  CC rte_kni.o
  CC gso_tunnel_tcp4.o
  CC rte_distributor.o
/download/dpdk/mk/rte.subdir.mk:35: recipe for target 'librte_security' failed
make[4]: *** [librte_security] Error 2
make[4]: *** Waiting for unfinished jobs....
  SYMLINK-FILE include/rte_gso.h
  CC gso_common.o
  CC rte_gso.o
  CC gso_tcp4.o
  SYMLINK-FILE include/rte_ip_frag.h
  CC rte_ipv6_fragmentation.o
  CC rte_ipv4_reassembly.o
  CC rte_ipv4_fragmentation.o
  CC rte_ipv6_reassembly.o
  CC ip_frag_internal.o
  CC rte_ip_frag_common.o
/download/dpdk/lib/librte_vhost/vhost_crypto.c:8:27: fatal error: rte_cryptodev.h: No such file or directory
compilation terminated.
/download/dpdk/mk/internal/rte.compile-pre.mk:114: recipe for target 'vhost_crypto.o' failed
make[5]: *** [vhost_crypto.o] Error 1
make[5]: *** Waiting for unfinished jobs....
  AR librte_bitratestats.a
  INSTALL-LIB librte_bitratestats.a
  AR librte_latencystats.a
  INSTALL-LIB librte_latencystats.a
  AR librte_gro.a
  INSTALL-LIB librte_gro.a
  AR librte_eventdev.a
  INSTALL-LIB librte_eventdev.a
  AR librte_ip_frag.a
  INSTALL-LIB librte_ip_frag.a
  AR librte_rawdev.a
  INSTALL-LIB librte_rawdev.a
  AR librte_gso.a
  INSTALL-LIB librte_gso.a
  AR librte_kni.a
  INSTALL-LIB librte_kni.a
  AR librte_pdump.a
  INSTALL-LIB librte_pdump.a
  AR librte_distributor.a
  INSTALL-LIB librte_distributor.a
/download/dpdk/mk/rte.subdir.mk:35: recipe for target 'librte_vhost' failed
make[4]: *** [librte_vhost] Error 2
/download/dpdk/mk/rte.sdkbuild.mk:49: recipe for target 'lib' failed
make[3]: *** [lib] Error 2
/download/dpdk/mk/rte.sdkroot.mk:100: recipe for target 'all' failed
make[2]: *** [all] Error 2
/download/dpdk/mk/rte.sdkinstall.mk:85: recipe for target 'pre_install' failed
make[1]: *** [pre_install] Error 2
/download/dpdk/mk/rte.sdkroot.mk:79: recipe for target 'install' failed
make: *** [install] Error 2
"""
Comment 1 Pablo de Lara 2018-05-17 10:52:50 CEST
I think cryptodev, among other libraries such as EAL, mbuf, mempool, etc. are core libraries and should not be disabled, as many libraries depend on these.
Actually, I would go for removing the option of disabling these libraries.
Comment 2 Ajit Khaparde 2018-08-02 01:09:24 CEST
Since cryptodev is a core library, are you ok with Pablo's suggestion and not disabling it? If yes, can we please close the bug.
Comment 3 Frédéric Coiffier 2018-11-27 12:13:48 CET
With v18.11 and CONFIG_RTE_LIBRTE_CRYPTODEV disabled, DPDK cannot be built (but it worked with v18.08): 

== Build lib/librte_port
  CC rte_port_sym_crypto.o
In file included from /home/fcoiffier/dpdk/develop/build/dpdkBuild-prefix/src/dpdkBuild/lib/librte_port/rte_port_sym_crypto.c:9:
/home/fcoiffier/dpdk/develop/build/dpdkBuild-prefix/src/dpdkBuild/lib/librte_port/rte_port_sym_crypto.h:23:10: fatal error: rte_cryptodev.h: No such file or directory
 #include <rte_cryptodev.h>
          ^~~~~~~~~~~~~~~~~
compilation terminated.
Comment 4 Thomas Monjalon 2020-06-18 22:20:56 CEST
I think it should have been fixed.
But it did not happen, and we are going to remove the makefiles.
With meson, we don't disable libraries.

That's why I close it as WONTFIX.

Note You need to log in before you can comment on or make changes to this bug.