arbor: Build error: `Could not enable support for std::filesystem`

Describe the bug A clear and concise description of what the bug is, steps to reproduce, expected behavior, etc.

Building Arbor from source w. cmake is broken at least on MacOS and anaconda python with Clang 11. Installing as pip install git+https://github.com/arbor-sim/arbor.git fails; the root of the issue appears to be during the cmake configuration step, which can be invoked as

$ conda create -n arbor2 python=3 pip cxx-compiler cmake -y
$ conda activate arbor2
$ cd <arbor-sources>
$ mkdir bld
$ cd bld
$ cmake ..
-- The C compiler identification is Clang 11.1.0
-- The CXX compiler identification is Clang 11.1.0
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Check for working C compiler: /Users/ehagen/anaconda3/envs/arbor2/bin/x86_64-apple-darwin13.4.0-clang - skipped
-- Detecting C compile features
-- Detecting C compile features - done
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Check for working CXX compiler: /Users/ehagen/anaconda3/envs/arbor2/bin/x86_64-apple-darwin13.4.0-clang++ - skipped
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- Performing Test STD_FS_PLAIN_RUN
-- Performing Test STD_FS_PLAIN_RUN - Failed
-- Performing Test STD_FS_STDCXX_RUN
-- Performing Test STD_FS_STDCXX_RUN - Failed
-- Performing Test STD_FS_CXX_RUN
-- Performing Test STD_FS_CXX_RUN - Failed
-- Performing Test STD_FS_PLAIN_LNK
-- Performing Test STD_FS_PLAIN_LNK - Failed
-- Performing Test STD_FS_STDCXX_LNK
-- Performing Test STD_FS_STDCXX_LNK - Failed
-- Performing Test STD_FS_CXX_LNK
-- Performing Test STD_FS_CXX_LNK - Failed
CMake Error at cmake/CompilerOptions.cmake:70 (message):
  Could not enable support for std::filesystem
Call Stack (most recent call first):
  CMakeLists.txt:152 (include)

Additional context Add any other context about the problem here (e.g. OS, Arbor version, etc.).

Arbor version: commit 9da761d6b7cc486b9370958c1be244d7761f4211 (HEAD -> master, origin/master, origin/HEAD)

System/anaconda info:

$ conda info
     active environment : arbor2
    active env location : /Users/ehagen/anaconda3/envs/arbor2
            shell level : 1
       user config file : /Users/ehagen/.condarc
 populated config files : /Users/ehagen/.condarc
          conda version : 4.10.1
    conda-build version : 3.21.4
         python version : 3.7.10.final.0
       virtual packages : __osx=10.14.6=0
                          __unix=0=0
                          __archspec=1=x86_64
       base environment : /Users/ehagen/anaconda3  (writable)
      conda av data dir : /Users/ehagen/anaconda3/etc/conda
  conda av metadata url : https://repo.anaconda.com/pkgs/main
           channel URLs : https://conda.anaconda.org/conda-forge/osx-64
                          https://conda.anaconda.org/conda-forge/noarch
                          https://repo.anaconda.com/pkgs/main/osx-64
                          https://repo.anaconda.com/pkgs/main/noarch
                          https://repo.anaconda.com/pkgs/r/osx-64
                          https://repo.anaconda.com/pkgs/r/noarch
          package cache : /Users/ehagen/anaconda3/pkgs
                          /Users/ehagen/.conda/pkgs
       envs directories : /Users/ehagen/anaconda3/envs
                          /Users/ehagen/.conda/envs
               platform : osx-64
             user-agent : conda/4.10.1 requests/2.25.1 CPython/3.7.10 Darwin/18.7.0 OSX/10.14.6
                UID:GID : 505:20
             netrc file : None
           offline mode : False

$ conda list
# packages in environment at /Users/ehagen/anaconda3/envs/arbor2:
#
# Name                    Version                   Build  Channel
bzip2                     1.0.8                hc929b4f_4    conda-forge
c-ares                    1.17.1               h0d85af4_1    conda-forge
c-compiler                1.1.3                h35c211d_0    conda-forge
ca-certificates           2020.12.5            h033912b_0    conda-forge
cctools                   949.0.1             hd9211c8_21    conda-forge
cctools_osx-64            949.0.1             h6407bdd_21    conda-forge
certifi                   2020.12.5        py39h6e9494a_1    conda-forge
clang                     11.1.0               h694c41f_0    conda-forge
clang-11                  11.1.0          default_he082bbe_0    conda-forge
clang_osx-64              11.1.0               hb91bd55_1    conda-forge
clangxx                   11.1.0          default_he082bbe_0    conda-forge
clangxx_osx-64            11.1.0               h7e1b574_1    conda-forge
cmake                     3.20.1               h32a7a09_0    conda-forge
compiler-rt               11.1.0               h654b07c_0    conda-forge
compiler-rt_osx-64        11.1.0               h8c5fa43_0    conda-forge
cxx-compiler              1.1.3                h926bf3e_0    conda-forge
expat                     2.3.0                he49afe7_0    conda-forge
krb5                      1.17.2               h60d9502_0    conda-forge
ld64                      530                 hd2e7500_21    conda-forge
ld64_osx-64               530                 he8994da_21    conda-forge
ldid                      2.1.2                h7660a38_2    conda-forge
libclang-cpp11.1          11.1.0          default_he082bbe_0    conda-forge
libcurl                   7.76.1               h8ef9fac_0    conda-forge
libcxx                    11.1.0               habf9029_0    conda-forge
libedit                   3.1.20191231         h0678c8f_2    conda-forge
libev                     4.33                 haf1e3a3_1    conda-forge
libffi                    3.3                  h046ec9c_2    conda-forge
libllvm11                 11.1.0               hd011deb_2    conda-forge
libnghttp2                1.43.0               h07e645a_0    conda-forge
libssh2                   1.9.0                h52ee1ee_6    conda-forge
libuv                     1.41.0               hbcf498f_0    conda-forge
llvm-openmp               11.1.0               hda6cdc1_1    conda-forge
llvm-tools                11.1.0               hd011deb_2    conda-forge
lz4-c                     1.9.3                h046ec9c_0    conda-forge
ncurses                   6.2                  h2e338ed_4    conda-forge
openssl                   1.1.1k               h0d85af4_0    conda-forge
pip                       21.0.1             pyhd8ed1ab_0    conda-forge
python                    3.9.2           h2502468_0_cpython    conda-forge
python_abi                3.9                      1_cp39    conda-forge
readline                  8.1                  h05e3726_0    conda-forge
rhash                     1.4.1                h35c211d_0    conda-forge
setuptools                49.6.0           py39h6e9494a_3    conda-forge
sqlite                    3.35.4               h44b9ce1_0    conda-forge
tapi                      1100.0.11            h9ce4665_0    conda-forge
tk                        8.6.10               h0419947_1    conda-forge
tzdata                    2021a                he74cb21_0    conda-forge
wheel                     0.36.2             pyhd3deb0d_0    conda-forge
xz                        5.2.5                haf1e3a3_1    conda-forge
zlib                      1.2.11            h7795811_1010    conda-forge
zstd                      1.4.9                h582d3a0_0    conda-forge

Cmake output: CMakeError.log CMakeOutput.log

About this issue

  • Original URL
  • State: closed
  • Created 3 years ago
  • Comments: 20 (13 by maintainers)

Commits related to this issue

Most upvoted comments

Thanks @bcumming, @thorstenhater. Can confirm that #1500 compiles without issues in my conda environment using the compilers from conda-forge (both using pip and step by step using cmake).