seqan/seqan3

MacOS - difficulty configuring cmake

SGSSGene opened this issue · 3 comments

One of our students has followed the seqan3 setup tutorial, but gets stuck at the cmake configuration step.
The repository was cloned with --recursive-submodules. The file submodules/sdsl-lite/include/sdsl/version.hpp exists.
But for some reason check_include_file_cxx can't find sdsl/version.hpp.
We also printed the content of CMAKE_REQUIRED_INCLUDES (which can be seen on the log below).
But for some reason it still dosn't find it.
I can't reproduce this on other MacOS systems.

cmake is version 3.22.1

Any Ideas what to try next? @eseiler

-- Finding SeqAn3 and checking requirements:
--   SeqAn3 include dir found:  
/System/Volumes/Data/Education/internship/tutorial/seqan3/include
--   Detected as running from a repository checkout…
--     …adding submodule include: 
/System/Volumes/Data/Education/internship/tutorial/seqan3/submodules/cereal/include
--     …adding submodule include: 
/System/Volumes/Data/Education/internship/tutorial/seqan3/submodules/sdsl-lite/include
--     …adding submodule include: 
--   C++ Standard-20 support:    via -std=c++20
--   C++ Concepts support:       via -std=c++20
--   Thread support:             builtin.
;/System/Volumes/Data/Education/internship/tutorial/seqan3/include;/System/Volumes/Data/Education/internship/tutorial/seqan3/submodules/cereal/include;/System/Volumes/Data/Education/internship/tutorial/seqan3/submodules/sdsl-lite/include;/System/Volumes/Data/Education/internship/tutorial/seqan3/submodules/sharg-parser/include
CMake Error at
/System/Volumes/Data/Education/internship/tutorial/seqan3/build_system/seqan3-config.cmake:115
(message):
  The SDSL library is required, but wasn't found.  Get it from
  https://github.com/xxsds/sdsl-lite
Call Stack (most recent call first):
  /System/Volumes/Data/Education/internship/tutorial/seqan3/build_system/seqan3-config.cmake:345
(seqan3_config_error)
  CMakeLists.txt:8 (find_package)

Maybe compiler include paths are missing? Then the version.hpp would not compile. Could be checked by looking for cereal before sdsl. If so, the compiler isn't configured correctly.

We removed the check for sdsl check, but than it just hangs with the check for Sharg.

This is fixed by setting export CXX=g++-11 before calling cmake the first time. Since it is a mac, it otherwise uses gcc which is just a symlink to clang. But it is still unclear to me, why this exactly causes this behavior. I would have expected these lines to still pass without problems.