Build facebook folly on CentOS7

0

I want to compile Folly on CentOS7 platform, but I encounter some error as following:

-- Found double-conversion: /usr/lib64/libdouble-conversion.so
-- Found gflags from package config /usr/local/lib/cmake/gflags/gflags-config.cmake
-- Found libevent: /usr/lib64/libevent.so
-- Could NOT find BZip2 (missing: BZIP2_LIBRARIES BZIP2_INCLUDE_DIR) 
-- Found LZ4: /usr/lib64/liblz4.so
-- Could NOT find ZSTD (missing: ZSTD_LIBRARY ZSTD_INCLUDE_DIR) 
-- Could NOT find LIBIBERTY (missing: LIBIBERTY_LIBRARY LIBIBERTY_INCLUDE_DIR) 
-- Could NOT find LIBAIO (missing: LIBAIO_LIBRARY LIBAIO_INCLUDE_DIR) 
-- Could NOT find LIBURING (missing: LIBURING_LIBRARY LIBURING_INCLUDE_DIR) 
-- Could NOT find LIBSODIUM (missing: LIBSODIUM_LIBRARY LIBSODIUM_INCLUDE_DIR) 
-- Setting FOLLY_USE_SYMBOLIZER: ON
-- compiler has flag pclmul, setting compile flag for /folly/folly/hash/detail/ChecksumDetail.cpp;/folly/folly/hash/detail/Crc32CombineDetail.cpp;/folly/folly/hash/detail/Crc32cDetail.cpp
-- Configuring done
-- Generating done
-- Build files have been written to: /folly

-- Found double-conversion: /usr/lib64/libdouble-conversion.so
-- Found gflags from package config /usr/local/lib/cmake/gflags/gflags-config.cmake
-- Found libevent: /usr/lib64/libevent.so
-- Could NOT find BZip2 (missing: BZIP2_LIBRARIES BZIP2_INCLUDE_DIR) 
-- Found LZ4: /usr/lib64/liblz4.so
-- Could NOT find ZSTD (missing: ZSTD_LIBRARY ZSTD_INCLUDE_DIR) 
-- Could NOT find LIBIBERTY (missing: LIBIBERTY_LIBRARY LIBIBERTY_INCLUDE_DIR) 
-- Could NOT find LIBAIO (missing: LIBAIO_LIBRARY LIBAIO_INCLUDE_DIR) 
-- Could NOT find LIBURING (missing: LIBURING_LIBRARY LIBURING_INCLUDE_DIR) 
-- Could NOT find LIBSODIUM (missing: LIBSODIUM_LIBRARY LIBSODIUM_INCLUDE_DIR) 
-- Setting FOLLY_USE_SYMBOLIZER: ON
-- compiler has flag pclmul, setting compile flag for /folly/folly/hash/detail/ChecksumDetail.cpp;/folly/folly/hash/detail/Crc32CombineDetail.cpp;/folly/folly/hash/detail/Crc32cDetail.cpp
-- Configuring done
-- Generating done
-- Build files have been written to: /folly

and, then I input make install, I received error as following:

In file included from /folly/folly/Function.h:230:0,
                 from /folly/folly/CancellationToken.h:20,
                 from /folly/folly/CancellationToken.cpp:17:
/folly/folly/functional/Invoke.h:23:10: fatal error: boost/preprocessor/facilities/is_empty_variadic.hpp: No such file or directory
 #include <boost/preprocessor/facilities/is_empty_variadic.hpp>
          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
compilation terminated.
make[2]: *** [CMakeFiles/folly_base.dir/build.make:63: CMakeFiles/folly_base.dir/folly/CancellationToken.cpp.o] Error 1
make[1]: *** [CMakeFiles/Makefile2:79: CMakeFiles/folly_base.dir/all] Error 2
make: *** [Makefile:130: all] Error 2

I have 2 questions: 1. How can I compile Folly on CentOS7 successfully? 2. Please suggest some good practice on that infrastructure build in c++

Peter.Xia

Posted 2019-11-12T09:34:15.887

Reputation: 1

No answers