the patch has been backported for RC1

Thanks for reporting it
Best regards
Alin


On Thu, Oct 12, 2023 at 4:07 AM Xiang Xiao <xiaoxiang781...@gmail.com>
wrote:

> A recent change limits c++20 requirement to libcxx:
> https://github.com/apache/nuttx/pull/10860
> The owner of libcxx decided not to support the build of libcxx by
> an old compiler, It's very hard to sync with the last libcxx version, and
> keep the support of the old compiler at the same time in the long term.
>
>
> On Thu, Oct 12, 2023 at 7:31 AM Tomek CEDRO <to...@cedro.info> wrote:
>
> > On Thu, Oct 12, 2023 at 12:19 AM Nathan Hartman wrote:
> > > On Wed, Oct 11, 2023 at 3:21 PM Tomek CEDRO wrote:
> > > > Hello world,
> > > > I have encountered a basic esp32:nsh build error in nuttx-12.3.0-RC0
> > > > related to xtensa g++ 8.4.0 compiler:
> > > > xtensa-esp32-elf-g++: error: unrecognized command line option
> > > > '-std=gnu++20'; did you mean '-std=gnu++2a'?
> > >
> > > This was changed in d6453cfc3cd4771a5221528cab3056660be4b1e3 (PR #
> 8244).
> > >
> > > See mail thread:
> > > https://lists.apache.org/thread/rkq99os8ql28bv1w8fy5mdqwl3h2vp6m
> > >
> > > The workaround is to set Kconfig CXX_STANDARD to gnu++2a instead of
> > gnu++20.
> >
> > Thank you Nathan :-)
> >
> > I am following the mailing list and github PRs so I know this was
> > recent change to make better compatibility with C++ and this is fine
> > to have this support. But this should not happen at the cost of
> > standard build setup and/or enforcing specific compilers / versions to
> > everyone by default (see inviolables). This probably also impacts
> > other platforms/architectures, especially the older ones. I am sure
> > this can be fixed easily.
> >
> > I am sorry for giving my first -1 as I know there are many new
> > features and improvements in the RC, but I am afraid if we don't fix
> > that compiler problem now then there will be no incentive to do this
> > in future.
> >
> >
> > > It would be nice if the build system could automatically detect the
> > > compiler version and set this value accordingly and automatically,
> > > without a Kconfig. IIRC there are programs in tools that determine
> > > compiler options based on the compiler and version. (Can't remember
> > > details off the top of my head at the moment.)
> >
> > Yes that would be perfect!
> >
> > Quick search shows that people do this in many ways by calling
> > compiler with a list of flags and checking return status for each flag
> > to see if it is supported.
> >
> > Current C++ standards supported by GCC and CLANG are listed here:
> > https://gcc.gnu.org/projects/cxx-status.html
> > https://clang.llvm.org/cxx_status.html
> >
> > Quote from GCC:
> > C++20 Support in GCC
> > GCC has experimental support for the latest revision of the C++
> > standard, which was published in 2020. The status of C++20 library
> > features is described in the library documentation.
> > C++20 features are available since GCC 8. To enable C++20 support, add
> > the command-line parameter -std=c++20 (use -std=c++2a in GCC 9 and
> > earlier) to your g++ command line. Or, to enable GNU extensions in
> > addition to C++20 features, add -std=gnu++20.
> >
> > Maybe a simple check can be added to a Makefile?
> >
> > Maybe a C++ support could be added as option that is disabled by
> > default (+compiler check)?
> >
> >
> > > > REMARKS:
> > > > 1. flock is a new system build dependency.
> > >
> > > I think documentation needs to be updated? I think not all systems
> > > have flock. Is it a Linux-only thing? (Non-BSD?)
> >
> > Not a big deal I guess :-) As compared to 12.2.1 in order to build
> > 12.3.0-RC0 I had to install additional "flock" application. It comes
> > from Linux and it is available on FreeBSD. On macOS (BSD) it is not
> > part of the base system too and it can be installed with brew. It
> > seems to be fairly old commit that fixes parallel build (which I also
> > use). Just a notice :-)
> >
> >
> >
> https://github.com/apache/nuttx-apps/blob/91a682f11bba1a537bd095cef45f17db57c9e7b9/Make.defs#L157
> >
> >
> https://github.com/apache/nuttx-apps/commit/f774e8ee7202a61bcf64a93b2f3ddfd240288cf1
> >
> > Thank you :-)
> > Tomek
> >
> > --
> > CeDeROM, SQ7MHZ, http://www.tomek.cedro.info
> >
>

Reply via email to