https://gcc.gnu.org/bugzilla/show_bug.cgi?id=69413
--- Comment #3 from Dominik Vogt <vogt at linux dot vnet.ibm.com> --- So, what is the proper way to compile -- snip -- #include <math.h> -- snip -- using a current Gcc compiled with an old system Glibc so that the program uses a new (not installed) Glibc? The hack I tried earlier still does not work: $ g++ -std=c++11 x.C -v \ --sysroot ~/src/git/glibc/install \ -idirafter ~/src/git/glibc/install/usr/include \ -idirafter /usr/local/include \ -idirafter /usr/include ... ignoring nonexistent directory "~/src/git/glibc/install/usr/local/include" ignoring nonexistent directory "~/src/git/gcc/install/lib/gcc/s390x-ibm-linux-gnu/6.0.0/../../../../s390x-ibm-linux-gnu/include" ignoring duplicate directory "~/src/git/glibc/install/usr/include" #include "..." search starts here: #include <...> search starts here: ~/src/git/gcc/install/lib/gcc/s390x-ibm-linux-gnu/6.0.0/../../../../include/c++/6.0.0 ~/src/git/gcc/install/lib/gcc/s390x-ibm-linux-gnu/6.0.0/../../../../include/c++/6.0.0/s390x-ibm-linux-gnu ~/src/git/gcc/install/lib/gcc/s390x-ibm-linux-gnu/6.0.0/../../../../include/c++/6.0.0/backward ~/src/git/gcc/install/lib/gcc/s390x-ibm-linux-gnu/6.0.0/include ~/src/git/gcc/install/include ~/src/git/gcc/install/lib/gcc/s390x-ibm-linux-gnu/6.0.0/include-fixed ~/src/git/glibc/install/usr/include /usr/local/include /usr/include End of search list. of search list. ...