Hello, Ludovic Courtès <l...@gnu.org> writes:
> Hi, > > Reza Housseini <reza.housse...@gmail.com> skribis: > >> So what is the workaround for this bug when one wants to use gcc >= 6.0.0 >> with a cmake build system? > > Guix has been using GCC 7.x as its default compiler for some time, and > everything works well, CMake or not. However, we also switched to using > ‘CPATH’ instead of ‘C_INCLUDE_PATH’ to work around this bug. > > HTH! > > Ludo’. As has been mentioned by Giel van Schijndel earlier in this bug report, using CPATH causes warnings to be emitted for core libraries such as glibc since the headers found in CPATH are not (rightfully) treated as system headers (and thus not muted by GCC). That has bitten me here, where I was mislead to think there was a build issue with the latest Inkscape: https://gitlab.com/inkscape/inkscape/issues/807. Many packages will end up having to disable warnings to cope with this behavior. It'd be nice to find a correct solution, but it seems I can't even make the build system of Inkscape work after switching from CPATH to CPLUS_INCLUDE_PATH and stripping it from any glibc/gcc include directories (I don't get the "stdlib.h: No such file or directory." error anymore, but I now get: "/gnu/store/zw5f5g5aqlxam3imaylfla0i98nkridf-glibc-2.30/include/bits/errno.h:26:11: fatal error: linux/errno.h: No such file or directory" instead, which I don't understand). I also tried moving the glibc include directory to the end of CPLUS_INCLUDE_PATH and it would still wouldn't be happy. Hmmph! Maxim