facebook / facebook/folly

Does not build on fedora 41

Open
#2,401 3 comments 0 reactions 0 assignees View on GitHub
Dominant language
C++
Stars
30.5k
Forks
5.9k
PR merge metrics
No merged PRs in 30d

Description

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 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 value or use a ... 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 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 folly::detail::str_to_floating_fast_float_from_chars(folly::StringPiece*) [with T = float; folly::StringPiece = folly::Range]’:
/tmp/tmp.vQznvQaI6b/folly/folly/Conv.cpp:379:64: required from here
379 | str_to_floating_fast_float_from_chars(StringPiece* src) noexcept;
| ^~~~~~~~
/tmp/tmp.vQznvQaI6b/folly/folly/Conv.cpp:363:29: error: no matching function for call to ‘fast_float::parse_options_t::parse_options_t()’
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::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::parse_options_t(const fast_float::parse_options_t&)’
41 | template 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::parse_options_t(fast_float::parse_options_t&&)’
/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 folly::detail::str_to_floating_fast_float_from_chars(folly::StringPiece*) [with T = double; folly::StringPiece = folly::Range]’:
/tmp/tmp.vQznvQaI6b/folly/folly/Conv.cpp:381:65: required from here
381 | str_to_floating_fast_float_from_chars(StringPiece* src) noexcept;
| ^~~~~~~~
/tmp/tmp.vQznvQaI6b/folly/folly/Conv.cpp:363:29: error: no matching function for call to ‘fast_float::parse_options_t::parse_options_t()’
363 | fast_float::parse_options options{
| ^~~~~~~
/usr/include/fast_float/float_common.h:42:22: note: candidate: ‘constexpr fast_float::parse_options_t::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::parse_options_t(const fast_float::parse_options_t&)’
41 | template 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::parse_options_t(fast_float::parse_options_t&&)’
/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
```

Contributor guide

Open the contributing guide

Research direction

Start by reproducing the Fedora 41 build with build/fbcode_builder/getdeps.py and inspect the failure in folly/Conv.cpp around fast_float::chars_format::allow_leading_plus. Review the dependency setup in CMake/folly-deps.cmake and verify the build completes on Fedora 41 without the reported compiler error.

Written by the indexing model from the issue text.

Assessment

Tech stack
cmake, cpp, fedora
Domain
build-system, operating-systems
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
28/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.