Boost: Build Fails on Ubuntu 20.04
ax3l opened this issue · comments
Axel Huebl commented
PRs #32 / #34 add CI on a standard Ubuntu 20.04 LTS.
It currently fails because Boost.Context has internal bugs (see #31).
[25/29] : && /usr/bin/c++ -Wall -Wextra -Wshadow -g examples/CMakeFiles/game_of_life.dir/game_of_life.cpp.o -o examples/game_of_life examples/libredGrapes.a /usr/lib/x86_64-linux-gnu/libboost_context.so.1.71.0 /usr/lib/x86_64-linux-gnu/libfmt.a /usr/lib/x86_64-linux-gnu/libspdlog.so.1.5.0 -lpthread && :
[26/29] ccache /usr/bin/c++ -DBOOST_ALL_NO_LIB -DBOOST_CONTEXT_DYN_LINK -DFMT_LOCALE -DSPDLOG_COMPILED_LIB -I/home/runner/work/redGrapes/redGrapes/examples -isystem /home/runner/work/redGrapes/redGrapes -isystem /home/runner/work/redGrapes/redGrapes/share/thirdParty/akrzemi/optional/include -isystem /home/runner/work/redGrapes/redGrapes/share/thirdParty/cameron314/concurrentqueue/include -Wall -Wextra -Wshadow -g -std=gnu++14 -MD -MT examples/CMakeFiles/cholesky.dir/cholesky.cpp.o -MF examples/CMakeFiles/cholesky.dir/cholesky.cpp.o.d -o examples/CMakeFiles/cholesky.dir/cholesky.cpp.o -c /home/runner/work/redGrapes/redGrapes/examples/cholesky.cpp
FAILED: examples/CMakeFiles/cholesky.dir/cholesky.cpp.o
ccache /usr/bin/c++ -DBOOST_ALL_NO_LIB -DBOOST_CONTEXT_DYN_LINK -DFMT_LOCALE -DSPDLOG_COMPILED_LIB -I/home/runner/work/redGrapes/redGrapes/examples -isystem /home/runner/work/redGrapes/redGrapes -isystem /home/runner/work/redGrapes/redGrapes/share/thirdParty/akrzemi/optional/include -isystem /home/runner/work/redGrapes/redGrapes/share/thirdParty/cameron314/concurrentqueue/include -Wall -Wextra -Wshadow -g -std=gnu++14 -MD -MT examples/CMakeFiles/cholesky.dir/cholesky.cpp.o -MF examples/CMakeFiles/cholesky.dir/cholesky.cpp.o.d -o examples/CMakeFiles/cholesky.dir/cholesky.cpp.o -c /home/runner/work/redGrapes/redGrapes/examples/cholesky.cpp
In file included from /usr/include/c++/9/complex.h:38,
from /usr/include/lapack.h:55,
from /usr/include/lapacke.h:37,
from /home/runner/work/redGrapes/redGrapes/examples/cholesky.cpp:3:
/usr/include/boost/context/detail/index_sequence.hpp:25:27: error: expected ‘>’ before ‘(’ token
25 | template< std::size_t ... I >
| ^
You might be able to work-around this with the right manual include before including Boost.Context. Maybe it's also fixed in a newer version of Boost.
Since boost acceptance testing is still pretty poor, it might be worth considering not depending on it altogether as well #31 .