You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@avro.apache.org by "John McClean (Jira)" <ji...@apache.org> on 2022/10/19 23:03:00 UTC
[jira] [Created] (AVRO-3650) Fix C++ Build on Manjaro
John McClean created AVRO-3650:
----------------------------------
Summary: Fix C++ Build on Manjaro
Key: AVRO-3650
URL: https://issues.apache.org/jira/browse/AVRO-3650
Project: Apache Avro
Issue Type: Bug
Reporter: John McClean
Manjaro has a recent version of boost, which results in this.
{quote}[ 19%] Building CXX object CMakeFiles/avrocpp.dir/impl/parsing/JsonCodec.cc.o
In file included from /usr/include/boost/math/tools/real_cast.hpp:9,
from /usr/include/boost/math/special_functions/fpclassify.hpp:17,
from /home/john/third-party/avro/lang/c++/impl/parsing/JsonCodec.cc:20:
/usr/include/boost/math/tools/config.hpp:23:6: error: #warning "The minimum language standard to use Boost.Math will be C++14 starting in July 2023 (Boost 1.82 release)" [-Werror=cpp]
23 | # warning "The minimum language standard to use Boost.Math will be C++14 starting in July 2023 (Boost 1.82 release)"
| ^~~~~~~
cc1plus: all warnings being treated as errors
make[2]: *** [CMakeFiles/avrocpp.dir/build.make:328: CMakeFiles/avrocpp.dir/impl/parsing/JsonCodec.cc.o] Error 1
make[1]: *** [CMakeFiles/Makefile2:129: CMakeFiles/avrocpp.dir/all] Error 2
make: *** [Makefile:166: all] Error 2
{quote}
In addition, once C++14 is used, the list of cpp keywords needs to be updated to include 'constinit'.
{quote}[ 98%] Building CXX object CMakeFiles/AvrogencppTestReservedWords.dir/test/AvrogencppTestReservedWords.cc.o
In file included from /home/john/third-party/avro/lang/c++/test/AvrogencppTestReservedWords.cc:18:
/home/john/third-party/avro/lang/c++/build/cpp_reserved_words.hh:57:17: error: identifier ‘constinit’ is a keyword in C++20 [-Werror=c++20-compat]
57 | std::string constinit;
| ^~~~~~~~~
cc1plus: all warnings being treated as errors
make[2]: *** [CMakeFiles/AvrogencppTestReservedWords.dir/build.make:76: CMakeFiles/AvrogencppTestReservedWords.dir/test/AvrogencppTestReservedWords.cc.o] Error 1
make[1]: *** [CMakeFiles/Makefile2:951: CMakeFiles/AvrogencppTestReservedWords.dir/all] Error 2
make: *** [Makefile:166: all] Error 2
{quote}
I'll put in a PR.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)