folly icon indicating copy to clipboard operation
folly copied to clipboard

Does not build on fedora 41

Open derfsubterfuge opened this issue 8 months ago • 3 comments

This project doesn't build on Fedora 41, making watchman fail to work on Fedora 41.

Here is the error:

-- Build files have been written to: /tmp/fbcode_builder_getdeps-ZtmpZtmp.vQznvQaI6bZfollyZbuildZfbcode_builder/build/folly
---
+ GETDEPS_BUILD_DIR=/tmp/fbcode_builder_getdeps-ZtmpZtmp.vQznvQaI6bZfollyZbuildZfbcode_builder/build \
+ GETDEPS_INSTALL_DIR=/tmp/fbcode_builder_getdeps-ZtmpZtmp.vQznvQaI6bZfollyZbuildZfbcode_builder/installed \
+ SSL_CERT_DIR=/etc/ssl/certs \
+ SSL_CERT_FILE=/etc/ssl/cert.pem \
+ cd /tmp/fbcode_builder_getdeps-ZtmpZtmp.vQznvQaI6bZfollyZbuildZfbcode_builder/build/folly && \
+ /usr/bin/cmake \
+      --build \
+      /tmp/fbcode_builder_getdeps-ZtmpZtmp.vQznvQaI6bZfollyZbuildZfbcode_builder/build/folly \
+      --target \
+      install \
+      --config \
+      RelWithDebInfo \
+      -j \
+      20
[8/1002] Building CXX object CMakeFiles/folly_base.dir/folly/Conv.cpp.o
FAILED: CMakeFiles/folly_base.dir/folly/Conv.cpp.o 
/usr/bin/c++ -DBOOST_ATOMIC_NO_LIB -DBOOST_CONTEXT_NO_LIB -DBOOST_FILESYSTEM_NO_LIB -DBOOST_PROGRAM_OPTIONS_NO_LIB -DBOOST_REGEX_NO_LIB -DBOOST_SYSTEM_NO_LIB -DBOOST_THREAD_NO_LIB -DFMT_SHARED -DFOLLY_XLOG_STRIP_PREFIXES=\"/tmp/tmp.vQznvQaI6b/folly:/tmp/fbcode_builder_getdeps-ZtmpZtmp.vQznvQaI6bZfollyZbuildZfbcode_builder/build/folly\" -DGFLAGS_IS_A_DLL=0 -D_GNU_SOURCE -D_REENTRANT -I/tmp/tmp.vQznvQaI6b/folly -I/tmp/fbcode_builder_getdeps-ZtmpZtmp.vQznvQaI6bZfollyZbuildZfbcode_builder/build/folly -I/usr/include/libdwarf-0 -O2 -g -DNDEBUG -std=gnu++17 -fcoroutines -g -finput-charset=UTF-8 -fsigned-char -Wall -Wno-deprecated -Wno-deprecated-declarations -Wno-sign-compare -Wno-unused -Wuninitialized -Wunused-label -Wunused-result -Wshadow-compatible-local -Wno-noexcept-type -faligned-new -fopenmp -MD -MT CMakeFiles/folly_base.dir/folly/Conv.cpp.o -MF CMakeFiles/folly_base.dir/folly/Conv.cpp.o.d -o CMakeFiles/folly_base.dir/folly/Conv.cpp.o -c /tmp/tmp.vQznvQaI6b/folly/folly/Conv.cpp
/tmp/tmp.vQznvQaI6b/folly/folly/Conv.cpp: In function ‘folly::Expected<Tgt, folly::ConversionCode> folly::detail::str_to_floating_fast_float_from_chars(folly::StringPiece*)’:
/tmp/tmp.vQznvQaI6b/folly/folly/Conv.cpp:365:33: error: ‘allow_leading_plus’ is not a member of ‘fast_float::chars_format’
  365 |       fast_float::chars_format::allow_leading_plus};

Below is the full output:

derfsubterfuge@castorina:/tmp/tmp.vQznvQaI6b$ git clone https://github.com/facebook/folly
Cloning into 'folly'...
remote: Enumerating objects: 115805, done.
remote: Counting objects: 100% (624/624), done.
remote: Compressing objects: 100% (204/204), done.
remote: Total 115805 (delta 514), reused 461 (delta 420), pack-reused 115181 (from 5)
Receiving objects: 100% (115805/115805), 46.53 MiB | 18.25 MiB/s, done.
Resolving deltas: 100% (91325/91325), done.
derfsubterfuge@castorina:/tmp/tmp.vQznvQaI6b$ cd folly
derfsubterfuge@castorina:/tmp/tmp.vQznvQaI6b/folly$ sudo ./build/fbcode_builder/getdeps.py install-system-deps --recursive
---
+ sudo \
+      dnf \
+      install \
+      -y \
+      autoconf \
+      automake \
+      binutils \
+      binutils-devel \
+      boost-devel \
+      boost-static \
+      cmake \
+      double-conversion \
+      double-conversion-devel \
+      fast_float-devel \
+      fmt-devel \
+      gflags-devel \
+      glog-devel \
+      gmock-devel \
+      gtest-devel \
+      libdwarf \
+      libdwarf-devel \
+      libevent-devel \
+      libsodium-devel \
+      libsodium-static \
+      libtool \
+      libunwind \
+      libunwind-devel \
+      libzstd \
+      libzstd-devel \
+      lz4-devel \
+      lz4-static \
+      ninja-build \
+      snappy-devel \
+      xz-devel \
+      zlib-ng-compat-devel \
+      zlib-ng-compat-static
Updating and loading repositories:
Repositories loaded.
Package "autoconf-2.72-4.fc41.noarch" is already installed.
Package "automake-1.16.5-17.fc41.noarch" is already installed.
Package "binutils-2.43.1-5.fc41.x86_64" is already installed.
Package "binutils-devel-2.43.1-5.fc41.x86_64" is already installed.
Package "boost-devel-1.83.0-8.fc41.x86_64" is already installed.
Package "boost-static-1.83.0-8.fc41.x86_64" is already installed.
Package "cmake-3.30.8-1.fc41.x86_64" is already installed.
Package "double-conversion-3.3.1-1.fc41.x86_64" is already installed.
Package "double-conversion-devel-3.3.1-1.fc41.x86_64" is already installed.
Package "fast_float-devel-6.1.6-4.fc41.noarch" is already installed.
Package "fmt-devel-11.0.2-2.fc41.x86_64" is already installed.
Package "gflags-devel-2.2.2-15.fc41.x86_64" is already installed.
Package "glog-devel-0.3.5-21.fc41.x86_64" is already installed.
Package "gmock-devel-1.14.0-5.fc41.x86_64" is already installed.
Package "gtest-devel-1.14.0-5.fc41.x86_64" is already installed.
Package "libdwarf-1:0.11.0-2.fc41.x86_64" is already installed.
Package "libdwarf-devel-1:0.11.0-2.fc41.x86_64" is already installed.
Package "libevent-devel-2.1.12-14.fc41.x86_64" is already installed.
Package "libsodium-devel-1.0.20-2.fc41.x86_64" is already installed.
Package "libsodium-static-1.0.20-2.fc41.x86_64" is already installed.
Package "libtool-2.4.7-12.fc41.x86_64" is already installed.
Package "libunwind-1.8.0-5.fc41.x86_64" is already installed.
Package "libunwind-devel-1.8.0-5.fc41.x86_64" is already installed.
Package "libzstd-1.5.7-1.fc41.x86_64" is already installed.
Package "libzstd-1.5.7-1.fc41.i686" is already installed.
Package "libzstd-devel-1.5.7-1.fc41.x86_64" is already installed.
Package "lz4-devel-1.10.0-1.fc41.x86_64" is already installed.
Package "lz4-static-1.10.0-1.fc41.x86_64" is already installed.
Package "ninja-build-1.12.1-3.fc41.x86_64" is already installed.
Package "snappy-devel-1.2.1-2.fc41.x86_64" is already installed.
Package "xz-devel-1:5.6.2-2.fc41.x86_64" is already installed.
Package "zlib-ng-compat-devel-2.2.3-2.fc41.x86_64" is already installed.
Package "zlib-ng-compat-static-2.2.3-2.fc41.x86_64" is already installed.

Nothing to do.
derfsubterfuge@castorina:/tmp/tmp.vQznvQaI6b/folly$ python3 ./build/fbcode_builder/getdeps.py --allow-system-packages build
Building on {distro=fedora, distro_vers=41, fb=off, fbsource=off, os=linux, shared_libs=off, test=on}
Testing ENV[BOOST_ROOT_1_69_0]: None
Assessing folly...
Testing ENV[BOOST_ROOT_1_69_0]: None
Building folly...
---
+ GETDEPS_BUILD_DIR=/tmp/fbcode_builder_getdeps-ZtmpZtmp.vQznvQaI6bZfollyZbuildZfbcode_builder/build \
+ GETDEPS_INSTALL_DIR=/tmp/fbcode_builder_getdeps-ZtmpZtmp.vQznvQaI6bZfollyZbuildZfbcode_builder/installed \
+ SSL_CERT_DIR=/etc/ssl/certs \
+ SSL_CERT_FILE=/etc/ssl/cert.pem \
+ cd /tmp/fbcode_builder_getdeps-ZtmpZtmp.vQznvQaI6bZfollyZbuildZfbcode_builder/build/folly && \
+ /usr/bin/cmake \
+      /tmp/tmp.vQznvQaI6b/folly \
+      -DCMAKE_INSTALL_PREFIX=/tmp/fbcode_builder_getdeps-ZtmpZtmp.vQznvQaI6bZfollyZbuildZfbcode_builder/installed/folly \
+      -DBUILD_SHARED_LIBS=OFF \
+      -DCMAKE_BUILD_TYPE=RelWithDebInfo \
+      -DBOOST_INCLUDEDIR=/usr/include/boost169 \
+      -DBOOST_LIBRARYDIR=/usr/lib64/boost169 \
+      -DBOOST_LINK_STATIC=ON \
+      -DBUILD_TESTS=ON \
+      -DBUILD_BENCHMARKS=OFF \
+      -G \
+      Ninja
CMake Deprecation Warning at CMakeLists.txt:15 (cmake_minimum_required):
  Compatibility with CMake < 3.5 will be removed from a future version of
  CMake.

  Update the VERSION argument <min> value or use a ...<max> suffix to tell
  CMake that the project does not need compatibility with older versions.


-- The CXX compiler identification is GNU 14.2.1
-- The C compiler identification is GNU 14.2.1
-- The ASM compiler identification is GNU
-- Found assembler: /usr/bin/cc
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Check for working CXX compiler: /usr/bin/c++ - skipped
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Check for working C compiler: /usr/bin/cc - skipped
-- Detecting C compile features
-- Detecting C compile features - done
-- setting C++ standard to C++17
-- Performing Test CMAKE_HAVE_LIBC_PTHREAD
-- Performing Test CMAKE_HAVE_LIBC_PTHREAD - Success
-- Found Threads: TRUE
CMake Warning (dev) at CMake/folly-deps.cmake:38 (find_package):
  Policy CMP0167 is not set: The FindBoost module is removed.  Run "cmake
  --help-policy CMP0167" for policy details.  Use the cmake_policy command to
  set the policy and suppress this warning.

Call Stack (most recent call first):
  CMakeLists.txt:135 (include)
This warning is for project developers.  Use -Wno-dev to suppress it.

-- Found Boost: /usr/lib64/cmake/Boost-1.83.0/BoostConfig.cmake (found suitable version "1.83.0", minimum required is "1.51.0") found components: context filesystem program_options regex system thread
-- Found DoubleConversion: /usr/lib64/libdouble-conversion.so
-- Found FastFloat: /usr/include
-- Found gflags from package config /usr/lib64/cmake/gflags/gflags-config.cmake
-- Found Glog: /usr/lib64/libglog.so
-- Found gflags as a dependency of glog::glog, include=/usr/include, libs=gflags_shared
CMake Warning (dev) at /usr/share/cmake/Modules/FindPackageHandleStandardArgs.cmake:441 (message):
  The package name passed to `find_package_handle_standard_args` (LIBUNWIND)
  does not match the name of the calling package (LibUnwind).  This can lead
  to problems in calling code that expects `find_package` result variables
  (e.g., `_FOUND`) to follow a certain pattern.
Call Stack (most recent call first):
  build/fbcode_builder/CMake/FindLibUnwind.cmake:22 (FIND_PACKAGE_HANDLE_STANDARD_ARGS)
  build/fbcode_builder/CMake/FindGlog.cmake:44 (find_package)
  CMake/folly-deps.cmake:67 (find_package)
  CMakeLists.txt:135 (include)
This warning is for project developers.  Use -Wno-dev to suppress it.

-- Found LIBUNWIND: /usr/lib64/libunwind.so
-- Found LibUnwind as a dependency of glog::glog, include=/usr/include, libs=/usr/lib64/libunwind.so
-- Found libevent: /usr/lib64/libevent.so
-- Found ZLIB: /usr/lib64/libz.so (found version "1.3.1")
-- Found OpenSSL: /usr/lib64/libcrypto.so (found suitable version "3.2.4", minimum required is "1.1.1")
-- Found BZip2: /usr/lib64/libbz2.so (found version "1.0.8")
-- Looking for BZ2_bzCompressInit
-- Looking for BZ2_bzCompressInit - found
-- Looking for lzma_auto_decoder in /usr/lib64/liblzma.so
-- Looking for lzma_auto_decoder in /usr/lib64/liblzma.so - found
-- Looking for lzma_easy_encoder in /usr/lib64/liblzma.so
-- Looking for lzma_easy_encoder in /usr/lib64/liblzma.so - found
-- Looking for lzma_lzma_preset in /usr/lib64/liblzma.so
-- Looking for lzma_lzma_preset in /usr/lib64/liblzma.so - found
-- Found LibLZMA: /usr/lib64/liblzma.so (found version "5.6.2")
-- Found LZ4: /usr/lib64/liblz4.so
-- Found LZ4: /usr/lib64/liblz4.so
CMake Warning (dev) at /usr/share/cmake/Modules/FindPackageHandleStandardArgs.cmake:441 (message):
  The package name passed to `find_package_handle_standard_args` (ZSTD) does
  not match the name of the calling package (Zstd).  This can lead to
  problems in calling code that expects `find_package` result variables
  (e.g., `_FOUND`) to follow a certain pattern.
Call Stack (most recent call first):
  CMake/FindZstd.cmake:32 (FIND_PACKAGE_HANDLE_STANDARD_ARGS)
  CMake/folly-deps.cmake:116 (find_package)
  CMakeLists.txt:135 (include)
This warning is for project developers.  Use -Wno-dev to suppress it.

-- Found ZSTD: /usr/lib64/libzstd.so
-- Found Zstd: /usr/lib64/libzstd.so
CMake Warning (dev) at /usr/share/cmake/Modules/FindPackageHandleStandardArgs.cmake:441 (message):
  The package name passed to `find_package_handle_standard_args` (SNAPPY)
  does not match the name of the calling package (Snappy).  This can lead to
  problems in calling code that expects `find_package` result variables
  (e.g., `_FOUND`) to follow a certain pattern.
Call Stack (most recent call first):
  CMake/FindSnappy.cmake:31 (FIND_PACKAGE_HANDLE_STANDARD_ARGS)
  CMake/folly-deps.cmake:123 (find_package)
  CMakeLists.txt:135 (include)
This warning is for project developers.  Use -Wno-dev to suppress it.

-- Found SNAPPY: /usr/lib64/libsnappy.so
CMake Warning (dev) at /usr/share/cmake/Modules/FindPackageHandleStandardArgs.cmake:441 (message):
  The package name passed to `find_package_handle_standard_args` (LIBDWARF)
  does not match the name of the calling package (LibDwarf).  This can lead
  to problems in calling code that expects `find_package` result variables
  (e.g., `_FOUND`) to follow a certain pattern.
Call Stack (most recent call first):
  CMake/FindLibDwarf.cmake:26 (FIND_PACKAGE_HANDLE_STANDARD_ARGS)
  CMake/folly-deps.cmake:130 (find_package)
  CMakeLists.txt:135 (include)
This warning is for project developers.  Use -Wno-dev to suppress it.

-- Found LIBDWARF: /usr/lib64/libdwarf.so
CMake Warning (dev) at /usr/share/cmake/Modules/FindPackageHandleStandardArgs.cmake:441 (message):
  The package name passed to `find_package_handle_standard_args` (LIBIBERTY)
  does not match the name of the calling package (Libiberty).  This can lead
  to problems in calling code that expects `find_package` result variables
  (e.g., `_FOUND`) to follow a certain pattern.
Call Stack (most recent call first):
  CMake/FindLibiberty.cmake:22 (FIND_PACKAGE_HANDLE_STANDARD_ARGS)
  CMake/folly-deps.cmake:134 (find_package)
  CMakeLists.txt:135 (include)
This warning is for project developers.  Use -Wno-dev to suppress it.

-- Found LIBIBERTY: /usr/lib64/libiberty.a
CMake Warning (dev) at /usr/share/cmake/Modules/FindPackageHandleStandardArgs.cmake:441 (message):
  The package name passed to `find_package_handle_standard_args` (LIBAIO)
  does not match the name of the calling package (LibAIO).  This can lead to
  problems in calling code that expects `find_package` result variables
  (e.g., `_FOUND`) to follow a certain pattern.
Call Stack (most recent call first):
  CMake/FindLibAIO.cmake:22 (FIND_PACKAGE_HANDLE_STANDARD_ARGS)
  CMake/folly-deps.cmake:138 (find_package)
  CMakeLists.txt:135 (include)
This warning is for project developers.  Use -Wno-dev to suppress it.

-- Could NOT find LIBAIO (missing: LIBAIO_LIBRARY LIBAIO_INCLUDE_DIR) 
CMake Warning (dev) at /usr/share/cmake/Modules/FindPackageHandleStandardArgs.cmake:441 (message):
  The package name passed to `find_package_handle_standard_args` (LIBURING)
  does not match the name of the calling package (LibUring).  This can lead
  to problems in calling code that expects `find_package` result variables
  (e.g., `_FOUND`) to follow a certain pattern.
Call Stack (most recent call first):
  CMake/FindLibUring.cmake:22 (FIND_PACKAGE_HANDLE_STANDARD_ARGS)
  CMake/folly-deps.cmake:142 (find_package)
  CMakeLists.txt:135 (include)
This warning is for project developers.  Use -Wno-dev to suppress it.

-- Could NOT find LIBURING (missing: LIBURING_LIBRARY LIBURING_INCLUDE_DIR) 
CMake Warning (dev) at /usr/share/cmake/Modules/FindPackageHandleStandardArgs.cmake:441 (message):
  The package name passed to `find_package_handle_standard_args` (LIBSODIUM)
  does not match the name of the calling package (Libsodium).  This can lead
  to problems in calling code that expects `find_package` result variables
  (e.g., `_FOUND`) to follow a certain pattern.
Call Stack (most recent call first):
  CMake/FindLibsodium.cmake:22 (FIND_PACKAGE_HANDLE_STANDARD_ARGS)
  CMake/folly-deps.cmake:146 (find_package)
  CMakeLists.txt:135 (include)
This warning is for project developers.  Use -Wno-dev to suppress it.

-- Found LIBSODIUM: /usr/lib64/libsodium.so
-- Found Libsodium: /usr/lib64/libsodium.so
CMake Warning (dev) at /usr/share/cmake/Modules/FindPackageHandleStandardArgs.cmake:441 (message):
  The package name passed to `find_package_handle_standard_args` (LIBUNWIND)
  does not match the name of the calling package (LibUnwind).  This can lead
  to problems in calling code that expects `find_package` result variables
  (e.g., `_FOUND`) to follow a certain pattern.
Call Stack (most recent call first):
  build/fbcode_builder/CMake/FindLibUnwind.cmake:22 (FIND_PACKAGE_HANDLE_STANDARD_ARGS)
  CMake/folly-deps.cmake:158 (find_package)
  CMakeLists.txt:135 (include)
This warning is for project developers.  Use -Wno-dev to suppress it.

-- Looking for swapcontext
-- Looking for swapcontext - found
-- Looking for C++ include elf.h
-- Looking for C++ include elf.h - found
-- Looking for backtrace
-- Looking for backtrace - found
-- backtrace facility detected in default set of libraries
-- Found Backtrace: /usr/include
-- Setting FOLLY_USE_SYMBOLIZER: ON
-- Setting FOLLY_HAVE_ELF: 1
-- Setting FOLLY_HAVE_DWARF: TRUE
-- Performing Test FOLLY_CPP_ATOMIC_BUILTIN
-- Performing Test FOLLY_CPP_ATOMIC_BUILTIN - Success
-- Performing Test FOLLY_STDLIB_LIBSTDCXX
-- Performing Test FOLLY_STDLIB_LIBSTDCXX - Success
-- Performing Test FOLLY_STDLIB_LIBSTDCXX_GE_9
-- Performing Test FOLLY_STDLIB_LIBSTDCXX_GE_9 - Success
-- Performing Test FOLLY_STDLIB_LIBCXX
-- Performing Test FOLLY_STDLIB_LIBCXX - Failed
-- Performing Test FOLLY_STDLIB_LIBCXX_GE_9
-- Performing Test FOLLY_STDLIB_LIBCXX_GE_9 - Failed
-- Performing Test FOLLY_STDLIB_LIBCPP
-- Performing Test FOLLY_STDLIB_LIBCPP - Failed
-- Looking for C++ include jemalloc/jemalloc.h
-- Looking for C++ include jemalloc/jemalloc.h - not found
-- Performing Test COMPILER_HAS_UNKNOWN_WARNING_OPTION
-- Performing Test COMPILER_HAS_UNKNOWN_WARNING_OPTION - Failed
-- Performing Test COMPILER_HAS_W_SHADOW_LOCAL
-- Performing Test COMPILER_HAS_W_SHADOW_LOCAL - Success
-- Performing Test COMPILER_HAS_W_SHADOW_COMPATIBLE_LOCAL
-- Performing Test COMPILER_HAS_W_SHADOW_COMPATIBLE_LOCAL - Success
-- Performing Test COMPILER_HAS_W_NOEXCEPT_TYPE
-- Performing Test COMPILER_HAS_W_NOEXCEPT_TYPE - Success
-- Performing Test COMPILER_HAS_W_NULLABILITY_COMPLETENESS
-- Performing Test COMPILER_HAS_W_NULLABILITY_COMPLETENESS - Failed
-- Performing Test COMPILER_HAS_W_INCONSISTENT_MISSING_OVERRIDE
-- Performing Test COMPILER_HAS_W_INCONSISTENT_MISSING_OVERRIDE - Failed
-- Performing Test COMPILER_HAS_F_ALIGNED_NEW
-- Performing Test COMPILER_HAS_F_ALIGNED_NEW - Success
-- Performing Test COMPILER_HAS_F_OPENMP
-- Performing Test COMPILER_HAS_F_OPENMP - Success
-- Looking for pthread_atfork
-- Looking for pthread_atfork - found
-- Looking for accept4
-- Looking for accept4 - found
-- Looking for getrandom
-- Looking for getrandom - found
-- Looking for preadv
-- Looking for preadv - found
-- Looking for pwritev
-- Looking for pwritev - found
-- Looking for clock_gettime
-- Looking for clock_gettime - found
-- Looking for pipe2
-- Looking for pipe2 - found
-- Looking for malloc_usable_size
-- Looking for malloc_usable_size - found
-- Performing Test FOLLY_HAVE_IFUNC
-- Performing Test FOLLY_HAVE_IFUNC - Success
-- Performing Test FOLLY_HAVE_UNALIGNED_ACCESS
-- Performing Test FOLLY_HAVE_UNALIGNED_ACCESS - Success
-- Performing Test FOLLY_HAVE_VLA
-- Performing Test FOLLY_HAVE_VLA - Success
-- Performing Test FOLLY_HAVE_WEAK_SYMBOLS
-- Performing Test FOLLY_HAVE_WEAK_SYMBOLS - Success
-- Performing Test FOLLY_HAVE_LINUX_VDSO
-- Performing Test FOLLY_HAVE_LINUX_VDSO - Success
-- Performing Test FOLLY_HAVE_WCHAR_SUPPORT
-- Performing Test FOLLY_HAVE_WCHAR_SUPPORT - Success
-- Performing Test FOLLY_HAVE_EXTRANDOM_SFMT19937
-- Performing Test FOLLY_HAVE_EXTRANDOM_SFMT19937 - Success
-- Performing Test HAVE_VSNPRINTF_ERRORS
-- Performing Test HAVE_VSNPRINTF_ERRORS - Success
-- Performing Test COMPILER_HAS_F_COROUTINES
-- Performing Test COMPILER_HAS_F_COROUTINES - Success
-- GCC has support for C++ coroutines, setting flag for Folly build.
-- arch  matches x86_64, building SSE4.2 version of base64
-- arch  matches x86_64, setting SSE2/AVX2 compile flags for LtHash SIMD code
-- Performing Test COMPILER_HAS_M_PCLMUL
-- Performing Test COMPILER_HAS_M_PCLMUL - Success
-- compiler has flag pclmul, setting compile flag for /tmp/tmp.vQznvQaI6b/folly/folly/external/fast-crc32/avx512_crc32c_v8s3x4.cpp;/tmp/tmp.vQznvQaI6b/folly/folly/external/fast-crc32/sse_crc32c_v8s3x3.cpp;/tmp/tmp.vQznvQaI6b/folly/folly/hash/detail/ChecksumDetail.cpp;/tmp/tmp.vQznvQaI6b/folly/folly/hash/detail/Crc32CombineDetail.cpp;/tmp/tmp.vQznvQaI6b/folly/folly/hash/detail/Crc32cDetail.cpp
-- arch  matches x86_64, setting AVX512 compile flags for crc32c SIMD code
-- Found gmock via config, defines=, include=/usr/include, libs=GTest::gmock_main;GTest::gmock;GTest::gtest
-- Found GTest: /usr/lib64/cmake/GTest/GTestConfig.cmake (found version "1.14.0")
Skipping slow test compression/test/compression_compression_test, enable with BUILD_SLOW_TESTS
Skipping broken test executors/test/executors_function_scheduler_test, enable with BUILD_BROKEN_TESTS
Skipping broken test executors/test/executors_thread_pool_executor_test, enable with BUILD_BROKEN_TESTS
Skipping broken test fibers/test/fibers_fibers_test, enable with BUILD_BROKEN_TESTS
Skipping hanging test io/test/io_shutdown_socket_set_test, enable with BUILD_HANGING_TESTS
Skipping hanging test io/test/io_socket_option_value_test, enable with BUILD_HANGING_TESTS
Skipping broken test io/async/test/io_async_async_test, enable with BUILD_BROKEN_TESTS
Skipping broken test io/async/test/io_async_event_base_test, enable with BUILD_BROKEN_TESTS
Skipping slow test io/async/test/io_async_hh_wheel_timer_slow_tests, enable with BUILD_SLOW_TESTS
Skipping hanging test test/atomic_hash_map_test, enable with BUILD_HANGING_TESTS
Skipping broken test test/exception_string_test, enable with BUILD_BROKEN_TESTS
Skipping broken test test/function_test, enable with BUILD_BROKEN_TESTS
Skipping broken test test/indexed_mem_pool_test, enable with BUILD_BROKEN_TESTS
Skipping slow test test/mpmc_queue_test, enable with BUILD_SLOW_TESTS
Skipping hanging test test/network_address_test, enable with BUILD_HANGING_TESTS
Skipping hanging test test/packed_sync_ptr_test, enable with BUILD_HANGING_TESTS
Skipping slow test test/producer_consumer_queue_test, enable with BUILD_SLOW_TESTS
Skipping broken test test/singleton_double_registration_test, enable with BUILD_BROKEN_TESTS
Skipping broken test test/singleton_thread_local_test, enable with BUILD_BROKEN_TESTS
-- Configuring done (21.6s)
-- Generating done (0.5s)
CMake Warning:
  Manually-specified variables were not used by the project:

    BOOST_INCLUDEDIR
    BOOST_LIBRARYDIR


-- Build files have been written to: /tmp/fbcode_builder_getdeps-ZtmpZtmp.vQznvQaI6bZfollyZbuildZfbcode_builder/build/folly
---
+ GETDEPS_BUILD_DIR=/tmp/fbcode_builder_getdeps-ZtmpZtmp.vQznvQaI6bZfollyZbuildZfbcode_builder/build \
+ GETDEPS_INSTALL_DIR=/tmp/fbcode_builder_getdeps-ZtmpZtmp.vQznvQaI6bZfollyZbuildZfbcode_builder/installed \
+ SSL_CERT_DIR=/etc/ssl/certs \
+ SSL_CERT_FILE=/etc/ssl/cert.pem \
+ cd /tmp/fbcode_builder_getdeps-ZtmpZtmp.vQznvQaI6bZfollyZbuildZfbcode_builder/build/folly && \
+ /usr/bin/cmake \
+      --build \
+      /tmp/fbcode_builder_getdeps-ZtmpZtmp.vQznvQaI6bZfollyZbuildZfbcode_builder/build/folly \
+      --target \
+      install \
+      --config \
+      RelWithDebInfo \
+      -j \
+      20
[8/1002] Building CXX object CMakeFiles/folly_base.dir/folly/Conv.cpp.o
FAILED: CMakeFiles/folly_base.dir/folly/Conv.cpp.o 
/usr/bin/c++ -DBOOST_ATOMIC_NO_LIB -DBOOST_CONTEXT_NO_LIB -DBOOST_FILESYSTEM_NO_LIB -DBOOST_PROGRAM_OPTIONS_NO_LIB -DBOOST_REGEX_NO_LIB -DBOOST_SYSTEM_NO_LIB -DBOOST_THREAD_NO_LIB -DFMT_SHARED -DFOLLY_XLOG_STRIP_PREFIXES=\"/tmp/tmp.vQznvQaI6b/folly:/tmp/fbcode_builder_getdeps-ZtmpZtmp.vQznvQaI6bZfollyZbuildZfbcode_builder/build/folly\" -DGFLAGS_IS_A_DLL=0 -D_GNU_SOURCE -D_REENTRANT -I/tmp/tmp.vQznvQaI6b/folly -I/tmp/fbcode_builder_getdeps-ZtmpZtmp.vQznvQaI6bZfollyZbuildZfbcode_builder/build/folly -I/usr/include/libdwarf-0 -O2 -g -DNDEBUG -std=gnu++17 -fcoroutines -g -finput-charset=UTF-8 -fsigned-char -Wall -Wno-deprecated -Wno-deprecated-declarations -Wno-sign-compare -Wno-unused -Wuninitialized -Wunused-label -Wunused-result -Wshadow-compatible-local -Wno-noexcept-type -faligned-new -fopenmp -MD -MT CMakeFiles/folly_base.dir/folly/Conv.cpp.o -MF CMakeFiles/folly_base.dir/folly/Conv.cpp.o.d -o CMakeFiles/folly_base.dir/folly/Conv.cpp.o -c /tmp/tmp.vQznvQaI6b/folly/folly/Conv.cpp
/tmp/tmp.vQznvQaI6b/folly/folly/Conv.cpp: In function ‘folly::Expected<Tgt, folly::ConversionCode> folly::detail::str_to_floating_fast_float_from_chars(folly::StringPiece*)’:
/tmp/tmp.vQznvQaI6b/folly/folly/Conv.cpp:365:33: error: ‘allow_leading_plus’ is not a member of ‘fast_float::chars_format’
  365 |       fast_float::chars_format::allow_leading_plus};
      |                                 ^~~~~~~~~~~~~~~~~~
/tmp/tmp.vQznvQaI6b/folly/folly/Conv.cpp: In instantiation of ‘folly::Expected<Tgt, folly::ConversionCode> folly::detail::str_to_floating_fast_float_from_chars(folly::StringPiece*) [with T = float; folly::StringPiece = folly::Range<const char*>]’:
/tmp/tmp.vQznvQaI6b/folly/folly/Conv.cpp:379:64:   required from here
  379 | str_to_floating_fast_float_from_chars<float>(StringPiece* src) noexcept;
      |                                                                ^~~~~~~~
/tmp/tmp.vQznvQaI6b/folly/folly/Conv.cpp:363:29: error: no matching function for call to ‘fast_float::parse_options_t<char>::parse_options_t(<brace-enclosed initializer list>)’
  363 |   fast_float::parse_options options{
      |                             ^~~~~~~
In file included from /usr/include/fast_float/fast_float.h:5,
                 from /tmp/tmp.vQznvQaI6b/folly/folly/Conv.cpp:24:
/usr/include/fast_float/float_common.h:42:22: note: candidate: ‘constexpr fast_float::parse_options_t<UC>::parse_options_t(fast_float::chars_format, UC) [with UC = char]’
   42 |   constexpr explicit parse_options_t(chars_format fmt = chars_format::general,
      |                      ^~~~~~~~~~~~~~~
/usr/include/fast_float/float_common.h:42:22: note:   conversion of argument 1 would be ill-formed:
/usr/include/fast_float/float_common.h:41:31: note: candidate: ‘constexpr fast_float::parse_options_t<char>::parse_options_t(const fast_float::parse_options_t<char>&)’
   41 | template <typename UC> struct parse_options_t {
      |                               ^~~~~~~~~~~~~~~
/usr/include/fast_float/float_common.h:41:31: note:   conversion of argument 1 would be ill-formed:
/usr/include/fast_float/float_common.h:41:31: note: candidate: ‘constexpr fast_float::parse_options_t<char>::parse_options_t(fast_float::parse_options_t<char>&&)’
/usr/include/fast_float/float_common.h:41:31: note:   conversion of argument 1 would be ill-formed:
/tmp/tmp.vQznvQaI6b/folly/folly/Conv.cpp: In instantiation of ‘folly::Expected<Tgt, folly::ConversionCode> folly::detail::str_to_floating_fast_float_from_chars(folly::StringPiece*) [with T = double; folly::StringPiece = folly::Range<const char*>]’:
/tmp/tmp.vQznvQaI6b/folly/folly/Conv.cpp:381:65:   required from here
  381 | str_to_floating_fast_float_from_chars<double>(StringPiece* src) noexcept;
      |                                                                 ^~~~~~~~
/tmp/tmp.vQznvQaI6b/folly/folly/Conv.cpp:363:29: error: no matching function for call to ‘fast_float::parse_options_t<char>::parse_options_t(<brace-enclosed initializer list>)’
  363 |   fast_float::parse_options options{
      |                             ^~~~~~~
/usr/include/fast_float/float_common.h:42:22: note: candidate: ‘constexpr fast_float::parse_options_t<UC>::parse_options_t(fast_float::chars_format, UC) [with UC = char]’
   42 |   constexpr explicit parse_options_t(chars_format fmt = chars_format::general,
      |                      ^~~~~~~~~~~~~~~
/usr/include/fast_float/float_common.h:42:22: note:   conversion of argument 1 would be ill-formed:
/usr/include/fast_float/float_common.h:41:31: note: candidate: ‘constexpr fast_float::parse_options_t<char>::parse_options_t(const fast_float::parse_options_t<char>&)’
   41 | template <typename UC> struct parse_options_t {
      |                               ^~~~~~~~~~~~~~~
/usr/include/fast_float/float_common.h:41:31: note:   conversion of argument 1 would be ill-formed:
/usr/include/fast_float/float_common.h:41:31: note: candidate: ‘constexpr fast_float::parse_options_t<char>::parse_options_t(fast_float::parse_options_t<char>&&)’
/usr/include/fast_float/float_common.h:41:31: note:   conversion of argument 1 would be ill-formed:
[27/1002] Building CXX object CMakeFiles/folly_base.dir/folly/Singleton.cpp.o
ninja: build stopped: subcommand failed.
Command '['/usr/bin/cmake', '--build', '/tmp/fbcode_builder_getdeps-ZtmpZtmp.vQznvQaI6bZfollyZbuildZfbcode_builder/build/folly', '--target', 'install', '--config', 'RelWithDebInfo', '-j', '20']' returned non-zero exit status 1.
!! Failed

derfsubterfuge avatar Mar 17 '25 19:03 derfsubterfuge

seeing the same error on Ubuntu 24.10

Rexogamer avatar Mar 19 '25 03:03 Rexogamer

helped updating fast_float to 8.0.2 version

Galebickosikasa avatar Mar 20 '25 15:03 Galebickosikasa

This commit is the reason for the error. fast_float introduced these definitions only a couple months ago so installing a newer version of fast_float should work.

Fedora 41 installs version 6.1 whereas this feature requires >7.0

Johan511 avatar Mar 25 '25 17:03 Johan511