Thanks Ivan, In that case I will conclude that it is time to upgrade my
Ubuntu 18 machine. I just wasn't sure whether there is still a need for
keeping my own package Ubuntu 18 compatible, but if dependencies like Rfast
do not do it and if it is even not in the CRAN checks anymore then there is
also limited value in me making the effort.

I have now fixed the message formatting in that issue just in case Rfast
maintainers want to have a look at it.

Vincent

Op di 6 feb. 2024 21:34 schreef Ivan Krylov <ikry...@disroot.org>:

> В Tue, 6 Feb 2024 18:27:32 +0100
> Vincent van Hees <vincentvanh...@gmail.com> пишет:
>
> > For details see:
> > https://github.com/RfastOfficial/Rfast/issues/99
>
> GitHub processed your plain text description of the problem as if it
> was Markdown and among other things ate the text that used to be there
> between angle brackets:
>
> >     #include
> >              ^~~~~~~~~~~
>
> By digging through the raw source code of the issue at
> https://api.github.com/repos/RfastOfficial/Rfast/issues/99 it is
> possible to find out which header was missing for Rfast:
>
> > ../inst/include/Rfast/parallel.h:20:10:fatal error: tion: No such
> > file or directory
> >     #include <execution>
> >              ^~~~~~~~~~~
> >    compilation terminated.
>
> Indeed, <execution> is a C++17 header [1]. While g++ version
> 7.5.0-3ubuntu1~18.04 seems to accept --std=c++17 without complaint, its
> libstdc++-7-dev package is missing this header. Moreover, there's still
> no <execution> in libstdc++-8-dev. I think that you need libstdc++-9
> for that to work, which is not in Bionic; older versions aren't
> C++17-compliant enough to compile Rfast, and C++17 is listed in the
> SystemRequirements of the package.
>
> Installing clang-10 and editing Makeconf to use clang++-10 instead of
> g++ seems to let the compilation proceed. In order to successfully link
> the resulting shared object, I also had to edit Makeconf to specify
> -L/usr/lib/gcc/x86_64-linux-gnu/7 when linking -lgfortran.
>
> If you plan to use this in production, be very careful. I don't know
> about binary compatibility guarantees between g++-7 and clang++-10, so
> you might have to recompile every C++-using R package from source with
> clang++-10 in order to avoid hard-to-debug problems when using them
> together. (It might also work fine. That's the worst thing about such
> problems.)
>
> --
> Best regards,
> Ivan
>
> [1] https://en.cppreference.com/w/cpp/header/execution
>

        [[alternative HTML version deleted]]

______________________________________________
R-package-devel@r-project.org mailing list
https://stat.ethz.ch/mailman/listinfo/r-package-devel

Reply via email to