Visa-Research / volepsi

Efficient Private Set Intersection base on VOLE
MIT License
98 stars 31 forks source link

Get error when build #20

Closed ghost closed 1 year ago

ghost commented 1 year ago

I cloned and build this project as: sudo python3 build.py -DCOPROTO_ENABLE_BOOST=ON -DCOPROTO_ENABLE_OPENSSL=ON and the error infomation is:

==========================================
CMake Error at cmake/findDependancies.cmake:57 (find_package):
  By not providing "FindlibOTe.cmake" in CMAKE_MODULE_PATH this project has
  asked CMake to find a package configuration file provided by "libOTe", but
  CMake did not find one.

  Could not find a package configuration file provided by "libOTe" with any
  of the following names:

    libOTeConfig.cmake
    libote-config.cmake

  Add the installation prefix of "libOTe" to CMAKE_PREFIX_PATH or set
  "libOTe_DIR" to a directory containing one of the above files.  If "libOTe"
  provides a separate development package or SDK, be sure it has been
  installed.
Call Stack (most recent call first):
  cmake/findDependancies.cmake:71 (FIND_LIBOTE)
  CMakeLists.txt:14 (include)

-- Configuring incomplete, errors occurred!

I see the issue#11 , and add -DSODIUM_MONTGOMERY=false into volepsi/thirdparty/getLibOTe.cmake but the error still occurs

ladnir commented 1 year ago

can you provide the full output, not just this last bit.

ghost commented 1 year ago

the full output is:


$ sudo python3 build.py -DCOPROTO_ENABLE_BOOST=ON -DCOPROTO_ENABLE_OPENSSL=ON
[sudo] password for boulevard: 

====== build.py (vole-psi) ======== mkdir -p out/build/linux cmake -S . -B out/build/linux -DCOPROTO_ENABLE_BOOST=ON -DCOPROTO_ENABLE_OPENSSL=ON -DSUDO_FETCH=OFF -DFETCH_AUTO=ON -DPARALLEL_FETCH=2 -DCMAKE_BUILD_TYPE=Release cmake --build out/build/linux --parallel 2 vvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvv

-- vole-psi options

-- Option: FETCH_AUTO = ON -- Option: FETCH_SPARSEHASH = -- Option: FETCH_LIBOTE = -- Option: FETCH_LIBDIVIDE = -- Option: VERBOSE_FETCH = ON

-- Option: VOLE_PSI_ENABLE_SSE = ON -- Option: VOLE_PSI_PIC = OFF -- Option: VOLE_PSI_ENABLE_GMW = ON -- Option: VOLE_PSI_ENABLE_CPSI = ON -- Option: VOLE_PSI_ENABLE_OPPRF = ON

-- Option: COPROTO_ENABLE_BOOST = ON -- Option: COPROTO_ENABLE_OPENSSL = ON -- Option: LIBOTE_ENABLE_BITPOLYMUL = ON -- VOLEPSI_THIRDPARTY_DIR=/home/boulevard/Desktop/volepsi2/volepsi/out/install/linux ============= Building sparsehash-c11 ============= Checkout edd6f1180156e76facc1c0449da245208ab39503 '/usr/bin/git' 'checkout' 'edd6f1180156e76facc1c0449da245208ab39503' HEAD is now at edd6f11 Merge pull request #36 from sparsehash/version log /home/boulevard/Desktop/volepsi2/volepsi/thirdparty/log-sparsehash-c11.txt

SPARSEHASH_INCLUDE_DIRS=/home/boulevard/Desktop/volepsi2/volepsi/out/install/linux/include ============= Building libOTe ============= libOTe Checkout 3d1ecb211a2421a670f787131ea1fb2d477ff128 '/usr/bin/git' 'checkout' '3d1ecb211a2421a670f787131ea1fb2d477ff128' HEAD is now at 3d1ecb2 version bump libOTe submodule '/usr/bin/git' 'submodule' 'update' '--recursive' libOTe Configure '/usr/bin/cmake' '-S' '/home/boulevard/Desktop/volepsi2/volepsi/out/libOTe' '-B' '/home/boulevard/Desktop/volepsi2/volepsi/out/libOTe/out/build/linux' '-DCMAKE_INSTALL_PREFIX=/usr/local' '-DCMAKE_PREFIX_PATH=/home/boulevard/Desktop/volepsi2/volepsi/out/install/linux;' '-DCMAKE_BUILD_TYPE:STRING=Release' '-DFETCH_AUTO=ON' '-DVERBOSE_FETCH=ON' '-DENABLE_CIRCUITS=ON' '-DENABLE_MRR=ON' '-DENABLE_IKNP=ON' '-DENABLE_SOFTSPOKEN_OT=ON' '-DENABLE_BITPOLYMUL=ON' '-DENABLE_SILENTOT=ON' '-DENABLE_SILENT_VOLE=ON' '-DENABLE_SODIUM=ON' '-DENABLE_MRR_TWIST=ON' '-DENABLE_SSE=ON' '-DCOPROTO_ENABLE_BOOST=ON' '-DCOPROTO_ENABLE_OPENSSL=ON' '-DOC_PIC=OFF' '-DOC_THIRDPARTY_CLONE_DIR=/home/boulevard/Desktop/volepsi2/volepsi/out' -- cryptoTools options

-- Option: FETCH_AUTO = ON -- Option: VERBOSE_FETCH = ON

-- Option: FETCH_SPAN_LITE = -- Option: FETCH_RELIC = -- Option: FETCH_SODIUM = -- Option: FETCH_BOOST =

-- Option: CMAKE_BUILD_TYPE = Release Release Debug RelWithDebInfo -- Option: ENABLE_SPAN_LITE = ON -- Option: ENABLE_RELIC = OFF -- Option: ENABLE_SODIUM = ON -- Option: ENABLE_BOOST = OFF

-- Option: ENABLE_CIRCUITS = ON -- Option: ENABLE_NET_LOG = OFF -- Option: ENABLE_WOLFSSL = OFF -- Option: ENABLE_SSE = ON -- Option: ENABLE_AVX = ON -- Option: ENABLE_BOOST = OFF

span-lite already fetched (cryptoTools). sodium already fetched. -- SODIUM_INCLUDE_DIRS: /home/boulevard/Desktop/volepsi2/volepsi/out/libOTe/out/install/linux/include -- SODIUM_LIBRARIES: /home/boulevard/Desktop/volepsi2/volepsi/out/libOTe/out/install/linux/lib/libsodium.a -- SODIUM_MONTGOMERY: ON

-- Could NOT find PkgConfig (missing: PKG_CONFIG_EXECUTABLE) -- General Options

-- Option: VERBOSE_FETCH = ON -- Option: FETCH_BITPOLYMUL = ON -- Option: FETCH_COPROTO = ON

-- Option: ENABLE_ALL_OT = ON/OFF -- Option: ENABLE_BITPOLYMUL = ON -- Option: LIBOTE_CPP_VER = 14 -- Option: COPROTO_ENABLE_BOOST = ON -- Option: COPROTO_ENABLE_OPENSSL= ON

-- Base OT protocols

-- Option: ENABLE_SIMPLESTOT = OFF -- Option: ENABLE_SIMPLESTOT_ASM = OFF -- Option: ENABLE_MRR = ON -- Option: ENABLE_MRR_TWIST = ON -- Option: ENABLE_MR = OFF -- Option: ENABLE_MR_KYBER = OFF -- 1-out-of-2 OT Extension protocols

-- Option: ENABLE_KOS = OFF -- Option: ENABLE_IKNP = ON -- Option: ENABLE_SILENTOT = ON

-- Option: ENABLE_SOFTSPOKEN_OT = ON

-- 1-out-of-2 Delta-OT Extension protocols

-- Option: ENABLE_DELTA_KOS = OFF

-- Vole protocols

-- Option: ENABLE_SILENT_VOLE = ON

-- 1-out-of-N OT Extension protocols

-- Option: ENABLE_OOS = OFF -- Option: ENABLE_KKRT = OFF

-- other

-- Option: NO_SILVER_WARNING = OFF

-- Option: NO_KOS_WARNING = OFF

bitpolymul already fetched. -- bitpolymul_INCLUDE_DIRS=/home/boulevard/Desktop/volepsi2/volepsi/out/libOTe/out/install/linux/include -- bitpolymul_LIBRARIES=/home/boulevard/Desktop/volepsi2/volepsi/out/libOTe/out/install/linux/lib/libbitpolymul.a

CMAKE_PREFIX_PATH_STR=/home/boulevard/Desktop/volepsi2/volepsi/out/libOTe/cmake/../out/install/linux%/home/boulevard/Desktop/volepsi2/volepsi/out/install/linux%

============= Building coproto ============= Checkout 8223c2dd434c1dbe48e26d0797dfbebc7143cf49 '/usr/bin/git' 'checkout' '8223c2dd434c1dbe48e26d0797dfbebc7143cf49' HEAD is now at 8223c2d clone dir Configure '/usr/bin/cmake' '-S' '/home/boulevard/Desktop/volepsi2/volepsi/out/coproto' '-B' '/home/boulevard/Desktop/volepsi2/volepsi/out/coproto/out/build/linux' '-DCMAKE_INSTALL_PREFIX=/usr/local' '-DCMAKE_PREFIX_PATH=/home/boulevard/Desktop/volepsi2/volepsi/out/libOTe/cmake/../out/install/linux;/home/boulevard/Desktop/volepsi2/volepsi/out/install/linux;' '-DCMAKE_BUILD_TYPE:STRING=Release' '-DVERBOSE_FETCH=ON' '-DCOPROTO_FETCH_AUTO=true' '-DCOPROTO_ENABLE_BOOST=ON' '-DCOPROTO_ENABLE_OPENSSL=ON' '-DCOPROTO_CPP_VER=14' '-DCOPROTO_PIC=OFF' '-DCOPROTO_THIRDPARTY_CLONE_DIR=/home/boulevard/Desktop/volepsi2/volepsi/out' -- Option: COPROTO_STAGE = /home/boulevard/Desktop/volepsi2/volepsi/out/coproto/out/install/linux -- Option: CMAKE_INSTALL_PREFIX = /usr/local -- Option: CMAKE_BUILD_TYPE = Release Release Debug RELWITHDEBINFO -- Option: COPROTO_FETCH_AUTO = true -- Option: COPROTO_FETCH_SPAN = -- Option: COPROTO_FETCH_FUNCTION2 = -- Option: COPROTO_FETCH_MACORO = -- Option: COPROTO_FETCH_BOOST =

-- Option: COPROTO_CPP_VER = 14 -- Option: COPROTO_ENABLE_BOOST = ON -- Option: COPROTO_ENABLE_OPENSSL = ON -- Option: COPROTO_ENABLE_ASSERTS = ON

-- Option: COPROTO_STAGE = /home/boulevard/Desktop/volepsi2/volepsi/out/coproto/out/install/linux -- Option: COPROTO_STAGE = /home/boulevard/Desktop/volepsi2/volepsi/out/coproto/out/install/linux

CLONE_DIR=/home/boulevard/Desktop/volepsi2/volepsi/out/span-lite

span-lite already fetched. macoroConfig.cmake : /home/boulevard/Desktop/volepsi2/volepsi/out/coproto/out/install/linux/lib/cmake/macoro/macoroConfig.cmake macoro already fetched. macoroConfig.cmake : /home/boulevard/Desktop/volepsi2/volepsi/out/coproto/out/install/linux/lib/cmake/macoro/macoroConfig.cmake function2 already fetched. Boost already fetched. -- Boost_LIB: Boost::system;Boost::thread;Boost::regex -- Boost_INC:

CMake Error at /usr/share/cmake-3.22/Modules/FindPackageHandleStandardArgs.cmake:230 (message): Could NOT find OpenSSL, try to set the path to OpenSSL root folder in the system variable OPENSSL_ROOT_DIR (missing: OPENSSL_CRYPTO_LIBRARY OPENSSL_INCLUDE_DIR) Call Stack (most recent call first): /usr/share/cmake-3.22/Modules/FindPackageHandleStandardArgs.cmake:594 (_FPHSA_FAILURE_MESSAGE) /usr/share/cmake-3.22/Modules/FindOpenSSL.cmake:574 (find_package_handle_standard_args) cmake/coprotoFindDeps.cmake:109 (find_package) coproto/CMakeLists.txt:2 (include)

-- Configuring incomplete, errors occurred! See also "/home/boulevard/Desktop/volepsi2/volepsi/out/coproto/out/build/linux/CMakeFiles/CMakeOutput.log". -- Configuring incomplete, errors occurred! See also "/home/boulevard/Desktop/volepsi2/volepsi/out/libOTe/out/build/linux/CMakeFiles/CMakeOutput.log". CMake Error at thirdparty/fetch.cmake:34 (message): Configure failed (1).

LOG:

Call Stack (most recent call first): thirdparty/getCoproto.cmake:39 (run) cmake/libOTeDepHelper.cmake:65 (include) CMakeLists.txt:66 (include)

libOTe Build '/usr/bin/cmake' '--build' '/home/boulevard/Desktop/volepsi2/volepsi/out/libOTe/out/build/linux' '--config' 'Release' gmake: Makefile: No such file or directory gmake: *** No rule to make target 'Makefile'. Stop. libOTe Install '/usr/bin/cmake' '--install' '/home/boulevard/Desktop/volepsi2/volepsi/out/libOTe/out/build/linux' '--config' 'Release' '--prefix' '/home/boulevard/Desktop/volepsi2/volepsi/out/install/linux' CMake Error: Error processing file: /home/boulevard/Desktop/volepsi2/volepsi/out/libOTe/out/build/linux/cmake_install.cmake log /home/boulevard/Desktop/volepsi2/volepsi/thirdparty/log-libOTe.txt

CMake Error at cmake/findDependancies.cmake:57 (find_package): By not providing "FindlibOTe.cmake" in CMAKE_MODULE_PATH this project has asked CMake to find a package configuration file provided by "libOTe", but CMake did not find one.

Could not find a package configuration file provided by "libOTe" with any of the following names:

libOTeConfig.cmake
libote-config.cmake

Add the installation prefix of "libOTe" to CMAKE_PREFIX_PATH or set "libOTe_DIR" to a directory containing one of the above files. If "libOTe" provides a separate development package or SDK, be sure it has been installed. Call Stack (most recent call first): cmake/findDependancies.cmake:71 (FIND_LIBOTE) CMakeLists.txt:14 (include)

-- Configuring incomplete, errors occurred! See also "/home/boulevard/Desktop/volepsi2/volepsi/out/build/linux/CMakeFiles/CMakeOutput.log". gmake: Makefile: No such file or directory gmake: *** No rule to make target 'Makefile'. Stop.

ladnir commented 1 year ago

libOTe couldn't be found because openssl, its dependency, couldn't be found. For various reasons the library does not download openssl for you. Instead, you are responsible for installing it if you want it. The simplest fix to get it compiling is to simply disable openssl support.

ghost commented 1 year ago

Thank you, It works. I just use -DCOPROTO_ENABLE_OPENSSL=OFF then it compiles.