[
https://issues.apache.org/jira/browse/AVRO-3650?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
ASF GitHub Bot updated AVRO-3650:
---------------------------------
Labels: pull-request-available (was: )
> 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
> Priority: Major
> Labels: pull-request-available
> Time Spent: 10m
> Remaining Estimate: 0h
>
> 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)