Hacktoberfest 2026: the issues maintainers tagged for October, open and beginner-friendly. Browse Hacktoberfest issues

[Build] arrayfire 3.9.0 doesn't build against spdlog 1.12.0

Open
#3,516 3 comments 5 reactions 1 assignee View on GitHub

@umar456 is already working on this.

Since Nov 8, 2023.

Assessment

This issue has not been assessed yet.

Description

build

Description

I'm the Arch maintainer for arrayfire and it currently fails a rebuild against the most recent version of spdlog.

Error Log

FAILED: src/backend/cuda/CMakeFiles/afcuda.dir/kernel/thrust_sort_by_key/thrust_sort_by_key_impl_float_1.cu.o
/opt/cuda/bin/nvcc -forward-unknown-to-host-compiler -DAFDLL -DAF_CACHE_KERNELS_TO_DISK -DAF_CUDA -DAF_MKL_INTERFACE_SIZE=4 -DAF_MKL_THREAD_LAYER=2 -DAF_USE_NEW_CUSPARSE_API -DAF_WITH_LOGGING -DBOOST_CHRONO_HEADER_ONLY -DBOOST_COMPUTE_HAVE_THREAD_LOCAL -DBOOST_COMPUTE_THREAD_SAFE -DCUDA_NO_HALF -DFMT_SHARED -DOS_LNX -DSPDLOG_COMPILED_LIB -DSPDLOG_FMT_EXTERNAL -DSPDLOG_SHARED_LIB -DWITH_CUDNN -DWITH_FREEIMAGE -Dafcuda_EXPORTS -Dspan_FEATURE_WITH_INITIALIZER_LIST_P2447=1 -I/build/arrayfire/src/arrayfire-full-v3.9.0/include -I/build/arrayfire/src/arrayfire-full-v3.9.0/build/include -I/build/arrayfire/src/arrayfire-full-v3.9.0/src/api/c -I/build/arrayfire/src/arrayfire-full-v3.9.0/src/backend/cuda -I/build/arrayfire/src/arrayfire-full-v3.9.0/src/backend/cuda/kernel -I/build/arrayfire/src/arrayfire-full-v3.9.0/src/backend/cuda/jit -I/build/arrayfire/src/arrayfire-full-v3.9.0/build/src/backend/cuda -I/build/arrayfire/src/arrayfire-full-v3.9.0/src/backend -I/build/arrayfire/src/arrayfire-full-v3.9.0/build/src/backend -isystem /opt/cuda/include -isystem /build/arrayfire/src/arrayfire-full-v3.9.0/build/extern/span-lite-src/include -isystem /build/arrayfire/src/arrayfire-full-v3.9.0/build/extern/af_glad-src/include -isystem /build/arrayfire/src/arrayfire-full-v3.9.0/extern/half/include -std=c++17 "--generate-code=arch=compute_52,code=[sm_52]" "--generate-code=arch=compute_53,code=[sm_53]" "--generate-code=arch=compute_60,code=[sm_60]" "--generate-code=arch=compute_61,code=[sm_61]" "--generate-code=arch=compute_62,code=[sm_62]" "--generate-code=arch=compute_70,code=[sm_70]" "--generate-code=arch=compute_72,code=[sm_72]" "--generate-code=arch=compute_75,code=[sm_75]" "--generate-code=arch=compute_80,code=[sm_80]" "--generate-code=arch=compute_86,code=[sm_86]" "--generate-code=arch=compute_87,code=[sm_87]" "--generate-code=arch=compute_89,code=[sm_89]" "--generate-code=arch=compute_90,code=[sm_90]" "--generate-code=arch=compute_90,code=[compute_90]" -Xcompiler=-fPIC --expt-relaxed-constexpr -Xcudafe --diag_suppress=unrecognized_gcc_pragma -MD -MT src/backend/cuda/CMakeFiles/afcuda.dir/kernel/thrust_sort_by_key/thrust_sort_by_key_impl_float_1.cu.o -MF src/backend/cuda/CMakeFiles/afcuda.dir/kernel/thrust_sort_by_key/thrust_sort_by_key_impl_float_1.cu.o.d -x cu -c /build/arrayfire/src/arrayfire-full-v3.9.0/build/src/backend/cuda/kernel/thrust_sort_by_key/thrust_sort_by_key_impl_float_1.cu -o src/backend/cuda/CMakeFiles/afcuda.dir/kernel/thrust_sort_by_key/thrust_sort_by_key_impl_float_1.cu.o
/usr/include/spdlog/common.h: In function ‘constexpr spdlog::string_view_t spdlog::details::to_string_view(const spdlog::memory_buf_t&)’:
/usr/include/spdlog/common.h:351:30: error: call to non-‘constexpr’ function ‘const T* fmt::v10::detail::buffer<T>::data() const [with T = char]’
  351 |     return spdlog::string_view_t{buf.data(), buf.size()};
      |                      ~~~~~~~~^~
/usr/include/fmt/core.h:845:6: note: ‘const T* fmt::v10::detail::buffer<T>::data() const [with T = char]’ declared here
  845 |   FMT_CONSTEXPR auto data() const noexcept -> const T* { return ptr_; }
      |      ^~~~
[498/2728] Building CUDA object src/backend/cuda/CMakeFiles/afcuda.dir/sort.cu.o

Build Environment

Compiler version: g++ (GCC) 13.2.1 20230801
Operating system: Arch
Build environment: spdlog 1.12.0
CMake variables: N/A

Dominant language
C++
Stars
4.9k
Forks
555
Avg merge
1h 24m
Merged PRs (30d)
1

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from arrayfire/arrayfire

All issues in arrayfire/arrayfire

Similar issues

More C++ issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.