qcscine / database

https://scine.ethz.ch
BSD 3-Clause "New" or "Revised" License
2 stars 0 forks source link

Compilation fails with Clang 13 #2

Open awvwgk opened 2 years ago

awvwgk commented 2 years ago

Trying to build this project using clang 13 on OSX currently fails with the following error

+ cmake -DCMAKE_AR=/Users/runner/mambaforge/conda-bld/scine-database_1656625346687/_build_env/bin/x86_64-apple-darwin13.4.0-ar -DCMAKE_CXX_COMPILER_AR=/Users/runner/mambaforge/conda-bld/scine-database_1656625346687/_build_env/bin/x86_64-apple-darwin13.4.0-ar -DCMAKE_C_COMPILER_AR=/Users/runner/mambaforge/conda-bld/scine-database_1656625346687/_build_env/bin/x86_64-apple-darwin13.4.0-ar -DCMAKE_RANLIB=/Users/runner/mambaforge/conda-bld/scine-database_1656625346687/_build_env/bin/x86_64-apple-darwin13.4.0-ranlib -DCMAKE_CXX_COMPILER_RANLIB=/Users/runner/mambaforge/conda-bld/scine-database_1656625346687/_build_env/bin/x86_64-apple-darwin13.4.0-ranlib -DCMAKE_C_COMPILER_RANLIB=/Users/runner/mambaforge/conda-bld/scine-database_1656625346687/_build_env/bin/x86_64-apple-darwin13.4.0-ranlib -DCMAKE_LINKER=/Users/runner/mambaforge/conda-bld/scine-database_1656625346687/_build_env/bin/x86_64-apple-darwin13.4.0-ld -DCMAKE_STRIP=/Users/runner/mambaforge/conda-bld/scine-database_1656625346687/_build_env/bin/x86_64-apple-darwin13.4.0-strip -DCMAKE_INSTALL_NAME_TOOL=/Users/runner/mambaforge/conda-bld/scine-database_1656625346687/_build_env/bin/x86_64-apple-darwin13.4.0-install_name_tool -DCMAKE_LIBTOOL=/Users/runner/mambaforge/conda-bld/scine-database_1656625346687/_build_env/bin/x86_64-apple-darwin13.4.0-libtool -DCMAKE_OSX_DEPLOYMENT_TARGET=10.9 -DCMAKE_BUILD_TYPE=Release -DCMAKE_OSX_SYSROOT=/Applications/Xcode_12.4.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.9.sdk -DCMAKE_INSTALL_PREFIX=/Users/runner/mambaforge/conda-bld/scine-database_1656625346687/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_plac -DCMAKE_INSTALL_LIBDIR=lib '-DCMAKE_PROGRAM_PATH=/Users/runner/mambaforge/conda-bld/scine-database_1656625346687/_build_env/bin;/Users/runner/mambaforge/conda-bld/scine-database_1656625346687/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_plac/bin' -B _build -G Ninja -DSCINE_MARCH= -DBLA_VENDOR=Generic
-- The C compiler identification is Clang 13.0.1
-- The CXX compiler identification is Clang 13.0.1
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Check for working C compiler: $BUILD_PREFIX/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: $BUILD_PREFIX/bin/x86_64-apple-darwin13.4.0-clang++ - skipped
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- Scine::UtilsOS found locally at $PREFIX/lib/cmake/ScineUtilsOS
-- Could NOT find MKL (missing: MKL_INCLUDE_DIRS MKL_LIBRARIES) 
-- Found LAPACKE for use with Eigen3
-- Found GTest locally at: GTest::gtest
-- Doxygen not found - Documentation for Database will not be built.
-- Configuring done
-- Generating done
-- Build files have been written to: $SRC_DIR/_build
+ cmake --build _build
[1/39] Building CXX object src/Database/CMakeFiles/Database.dir/Database/Objects/BoolProperty.cpp.o
FAILED: src/Database/CMakeFiles/Database.dir/Database/Objects/BoolProperty.cpp.o 
$BUILD_PREFIX/bin/x86_64-apple-darwin13.4.0-clang++ -DBOOST_ALL_NO_LIB -DBOOST_FILESYSTEM_DYN_LINK -DBOOST_SYSTEM_DYN_LINK -DDatabase_EXPORTS -DEIGEN_USE_BLAS -I$SRC_DIR/src/Database -isystem $PREFIX/include/Scine -isystem $PREFIX/include/eigen3 -isystem $PREFIX/include/mongocxx/v_noabi -isystem $PREFIX/include/bsoncxx/v_noabi -march=core2 -mtune=haswell -mssse3 -ftree-vectorize -fPIC -fPIE -fstack-protector-strong -O2 -pipe -stdlib=libc++ -fvisibility-inlines-hidden -fmessage-length=0 -isystem $PREFIX/include -fdebug-prefix-map=$SRC_DIR=/usr/local/src/conda/scine-database-1.0.0 -fdebug-prefix-map=$PREFIX=/usr/local/src/conda-prefix -Wall -Wextra -Wpedantic -O3 -DNDEBUG -isysroot /Applications/Xcode_12.4.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.9.sdk -mmacosx-version-min=10.9 -fPIC -std=gnu++17 -MD -MT src/Database/CMakeFiles/Database.dir/Database/Objects/BoolProperty.cpp.o -MF src/Database/CMakeFiles/Database.dir/Database/Objects/BoolProperty.cpp.o.d -o src/Database/CMakeFiles/Database.dir/Database/Objects/BoolProperty.cpp.o -c $SRC_DIR/src/Database/Database/Objects/BoolProperty.cpp
In file included from $SRC_DIR/src/Database/Database/Objects/BoolProperty.cpp:8:
$SRC_DIR/src/Database/Database/Collection.h:103:77: error: reference to incomplete type 'const std::string' (aka 'const basic_string<char, char_traits<char>, allocator<char>>') could not bind to an lvalue of type 'const char [1]'
  ObjectClass getAndUpdateOne(const std::string& filter, const std::string& update = "", const std::string& sort = "");
                                                                            ^        ~~
$SRC_DIR/src/Database/Database/Collection.h:103:77: note: passing argument to parameter 'update' here
$SRC_DIR/src/Database/Database/Collection.h:103:109: error: reference to incomplete type 'const std::string' (aka 'const basic_string<char, char_traits<char>, allocator<char>>') could not bind to an lvalue of type 'const char [1]'
  ObjectClass getAndUpdateOne(const std::string& filter, const std::string& update = "", const std::string& sort = "");
                                                                                                            ^      ~~
$SRC_DIR/src/Database/Database/Collection.h:103:109: note: passing argument to parameter 'sort' here
$SRC_DIR/src/Database/Database/Collection.h:116:68: error: reference to incomplete type 'const std::string' (aka 'const basic_string<char, char_traits<char>, allocator<char>>') could not bind to an lvalue of type 'const char [1]'
  ObjectClass getOne(const std::string& filter, const std::string& sort = "");
                                                                   ^      ~~
$SRC_DIR/src/Database/Database/Collection.h:116:68: note: passing argument to parameter 'sort' here
3 errors generated.
[2/39] Building CXX object src/Database/CMakeFiles/Database.dir/Database/Objects/DenseMatrixProperty.cpp.o
FAILED: src/Database/CMakeFiles/Database.dir/Database/Objects/DenseMatrixProperty.cpp.o 
$BUILD_PREFIX/bin/x86_64-apple-darwin13.4.0-clang++ -DBOOST_ALL_NO_LIB -DBOOST_FILESYSTEM_DYN_LINK -DBOOST_SYSTEM_DYN_LINK -DDatabase_EXPORTS -DEIGEN_USE_BLAS -I$SRC_DIR/src/Database -isystem $PREFIX/include/Scine -isystem $PREFIX/include/eigen3 -isystem $PREFIX/include/mongocxx/v_noabi -isystem $PREFIX/include/bsoncxx/v_noabi -march=core2 -mtune=haswell -mssse3 -ftree-vectorize -fPIC -fPIE -fstack-protector-strong -O2 -pipe -stdlib=libc++ -fvisibility-inlines-hidden -fmessage-length=0 -isystem $PREFIX/include -fdebug-prefix-map=$SRC_DIR=/usr/local/src/conda/scine-database-1.0.0 -fdebug-prefix-map=$PREFIX=/usr/local/src/conda-prefix -Wall -Wextra -Wpedantic -O3 -DNDEBUG -isysroot /Applications/Xcode_12.4.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.9.sdk -mmacosx-version-min=10.9 -fPIC -std=gnu++17 -MD -MT src/Database/CMakeFiles/Database.dir/Database/Objects/DenseMatrixProperty.cpp.o -MF src/Database/CMakeFiles/Database.dir/Database/Objects/DenseMatrixProperty.cpp.o.d -o src/Database/CMakeFiles/Database.dir/Database/Objects/DenseMatrixProperty.cpp.o -c $SRC_DIR/src/Database/Database/Objects/DenseMatrixProperty.cpp
In file included from $SRC_DIR/src/Database/Database/Objects/DenseMatrixProperty.cpp:9:
In file included from $SRC_DIR/src/Database/Database/Objects/Impl/DerivedProperty.h:11:
$SRC_DIR/src/Database/Database/Collection.h:103:77: error: reference to incomplete type 'const std::string' (aka 'const basic_string<char, char_traits<char>, allocator<char>>') could not bind to an lvalue of type 'const char [1]'
  ObjectClass getAndUpdateOne(const std::string& filter, const std::string& update = "", const std::string& sort = "");
                                                                            ^        ~~
$SRC_DIR/src/Database/Database/Collection.h:103:77: note: passing argument to parameter 'update' here
$SRC_DIR/src/Database/Database/Collection.h:103:109: error: reference to incomplete type 'const std::string' (aka 'const basic_string<char, char_traits<char>, allocator<char>>') could not bind to an lvalue of type 'const char [1]'
  ObjectClass getAndUpdateOne(const std::string& filter, const std::string& update = "", const std::string& sort = "");
                                                                                                            ^      ~~
$SRC_DIR/src/Database/Database/Collection.h:103:109: note: passing argument to parameter 'sort' here
$SRC_DIR/src/Database/Database/Collection.h:116:68: error: reference to incomplete type 'const std::string' (aka 'const basic_string<char, char_traits<char>, allocator<char>>') could not bind to an lvalue of type 'const char [1]'
  ObjectClass getOne(const std::string& filter, const std::string& sort = "");
                                                                   ^      ~~
$SRC_DIR/src/Database/Database/Collection.h:116:68: note: passing argument to parameter 'sort' here
3 errors generated.

System information

 + conda info

     active environment : base
    active env location : /Users/runner/mambaforge
            shell level : 1
       user config file : /Users/runner/.condarc
 populated config files : /Users/runner/mambaforge/.condarc
          conda version : 4.12.0
    conda-build version : 3.21.9
         python version : 3.9.13.final.0
       virtual packages : __osx=10.15.7=0
                          __unix=0=0
                          __archspec=1=x86_64
       base environment : /Users/runner/mambaforge  (writable)
      conda av data dir : /Users/runner/mambaforge/etc/conda
  conda av metadata url : None
           channel URLs : https://conda.anaconda.org/conda-forge/osx-64
                          https://conda.anaconda.org/conda-forge/noarch
          package cache : /Users/runner/mambaforge/pkgs
                          /Users/runner/.conda/pkgs
       envs directories : /Users/runner/mambaforge/envs
                          /Users/runner/.conda/envs
               platform : osx-64
             user-agent : conda/4.12.0 requests/2.27.1 CPython/3.9.13 Darwin/19.6.0 OSX/10.15.7
                UID:GID : 501:20
             netrc file : None
           offline mode : False
weymutht commented 2 years ago

Thanks a lot for reporting this. Please note that we cannot provide support for OSX, as we don't run this platform ourselves.

awvwgk commented 2 years ago

Doesn't happen with clang 13 on Linux, I get a different error there.