[Bug bootstrap/52947] New: [4.7 Regression] bootstrap fails due to wrong include search path composition
rainer@emrich-ebersheim.de
gcc-bugzilla@gcc.gnu.org
Thu Apr 12 12:05:00 GMT 2012
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=52947
Bug #: 52947
Summary: [4.7 Regression] bootstrap fails due to wrong include
search path composition
Classification: Unclassified
Product: gcc
Version: 4.7.0
Status: UNCONFIRMED
Severity: normal
Priority: P3
Component: bootstrap
AssignedTo: unassigned@gcc.gnu.org
ReportedBy: rainer@emrich-ebersheim.de
native x86_64-w64-mingw32 bootstrap using --with-sysroot
This used to work for the 4.6 series.
../../src/gcc-4.7.0/configure
--prefix=/opt/devel/gnu/gcc/MINGW_NT/x86_64-w64-mingw32/mingw-w64-runtime-trunk-svn/gcc-4.7.0
--with-gnu-as
--with-as=/opt/devel/gnu/gcc/MINGW_NT/x86_64-w64-mingw32/mingw-w64-runtime-trunk-svn/gcc-4.7.0/bin/as
--with-gnu-ld
--with-ld=/opt/devel/gnu/gcc/MINGW_NT/x86_64-w64-mingw32/mingw-w64-runtime-trunk-svn/gcc-4.7.0/bin/ld
--build=x86_64-w64-mingw32
--enable-languages=c,ada,c++,fortran,java,lto,objc,obj-c++
--with-gmp-include=/SCRATCH/tmp.pzGXGetUXT/install/include
--with-gmp-lib=/SCRATCH/tmp.pzGXGetUXT/install/lib64
--with-mpfr-include=/SCRATCH/tmp.pzGXGetUXT/install/include
--with-mpfr-lib=/SCRATCH/tmp.pzGXGetUXT/install/lib64
--with-mpc-include=/SCRATCH/tmp.pzGXGetUXT/install/include
--with-mpc-lib=/SCRATCH/tmp.pzGXGetUXT/install/lib64
--with-ppl-include=/SCRATCH/tmp.pzGXGetUXT/install/include
--with-ppl-lib=/SCRATCH/tmp.pzGXGetUXT/install/lib64
--with-cloog-include=/SCRATCH/tmp.pzGXGetUXT/install/include
--with-cloog-lib=/SCRATCH/tmp.pzGXGetUXT/install/lib64
--with-local-prefix=/opt/devel/tec/devel/MINGW_NT/x86_64-w64-mingw32/mingw-w64-runtime-trunk-svn/gcc-4.7.0
--enable-libgomp --enable-fully-dynamic-string --disable-multilib
--enable-checking=release --disable-werror --with-sysroot=/x86_64-w64-trunk
--with-host-libstdcxx='-Wl,-Bstatic,-lstdc++,-Bdynamic'
gcc 4.7.0 bootstrap fails during configuration in libgcc:
checking how to run the C preprocessor... /lib/cpp
configure: error: in
`/SCRATCH/tmp.pzGXGetUXT/gcc-4.7.0/gcc-4.7.0/x86_64-w64-mingw32/libgcc':
configure: error: C preprocessor "/lib/cpp" fails sanity check
See `config.log' for more details.
gmake[2]: *** [configure-stage1-target-libgcc] Error 1
gmake[2]: Leaving directory `/SCRATCH/tmp.pzGXGetUXT/gcc-4.7.0/gcc-4.7.0'
gmake[1]: *** [stage1-bubble] Error 2
gmake[1]: Leaving directory `/SCRATCH/tmp.pzGXGetUXT/gcc-4.7.0/gcc-4.7.0'
gmake: *** [all] Error 2
config.log in libgcc shows:
configure:3893: checking how to run the C preprocessor
configure:3924: /SCRATCH/tmp.pzGXGetUXT/gcc-4.7.0/gcc-4.7.0/./gcc/xgcc
-B/SCRATCH/tmp.pzGXGetUXT/gcc-4.7.0/gcc-4.7.0/./gcc/
-L/opt/devel/gnu/gcc/MINGW_NT/x86_64-w64-mingw32/mingw-w64-runtime-trunk-svn/gcc-4.7.0/x86_64-w64-mingw32/lib
-L/opt/devel/gnu/gcc/MINGW_NT/x86_64-w64-mingw32/mingw-w64-runtime-trunk-svn/gcc-4.7.0/mingw/lib
-isystem
/opt/devel/gnu/gcc/MINGW_NT/x86_64-w64-mingw32/mingw-w64-runtime-trunk-svn/gcc-4.7.0/x86_64-w64-mingw32/include
-isystem
/opt/devel/gnu/gcc/MINGW_NT/x86_64-w64-mingw32/mingw-w64-runtime-trunk-svn/gcc-4.7.0/mingw/include
-B/opt/devel/gnu/gcc/MINGW_NT/x86_64-w64-mingw32/mingw-w64-runtime-trunk-svn/gcc-4.7.0/x86_64-w64-mingw32/bin/
-B/opt/devel/gnu/gcc/MINGW_NT/x86_64-w64-mingw32/mingw-w64-runtime-trunk-svn/gcc-4.7.0/x86_64-w64-mingw32/lib/
-isystem
/opt/devel/gnu/gcc/MINGW_NT/x86_64-w64-mingw32/mingw-w64-runtime-trunk-svn/gcc-4.7.0/x86_64-w64-mingw32/include
-isystem
/opt/devel/gnu/gcc/MINGW_NT/x86_64-w64-mingw32/mingw-w64-runtime-trunk-svn/gcc-4.7.0/x86_64-w64-mingw32/sys-include
-E conftest.c
In file included from
D:/msys/SCRATCH/tmp.pzGXGetUXT/gcc-4.7.0/gcc-4.7.0/gcc/include-fixed/syslimits.h:7:0,
from
D:/msys/SCRATCH/tmp.pzGXGetUXT/gcc-4.7.0/gcc-4.7.0/gcc/include-fixed/limits.h:34,
from conftest.c:10:
D:/msys/SCRATCH/tmp.pzGXGetUXT/gcc-4.7.0/gcc-4.7.0/gcc/include-fixed/limits.h:169:61:
error: no include path in which to search for limits.h
configure:3924: $? = 1
configure: failed program was:
| /* confdefs.h */
| #define PACKAGE_NAME "GNU C Runtime Library"
| #define PACKAGE_TARNAME "libgcc"
| #define PACKAGE_VERSION "1.0"
| #define PACKAGE_STRING "GNU C Runtime Library 1.0"
| #define PACKAGE_BUGREPORT ""
| #define PACKAGE_URL "http://www.gnu.org/software/libgcc/"
| /* end confdefs.h. */
| #ifdef __STDC__
| # include <limits.h>
| #else
| # include <assert.h>
| #endif
| Syntax error
further analysis shows that the include search path composition is wrong.
For gcc-4.6.3 stage1 xgcc the search path is as follows:
nicht vorhandenes Verzeichnis
»d:/opt/devel/gnu/gcc/MINGW_NT/x86_64-w64-mingw32/mingw-w64-runtime-trunk-svn/gcc-4.6.3/x86_64-w64-mingw32/include«
wird ignoriert
nicht vorhandenes Verzeichnis
»d:/opt/devel/gnu/gcc/MINGW_NT/x86_64-w64-mingw32/mingw-w64-runtime-trunk-svn/gcc-4.6.3/mingw/include«
wird ignoriert
nicht vorhandenes Verzeichnis
»d:/opt/devel/gnu/gcc/MINGW_NT/x86_64-w64-mingw32/mingw-w64-runtime-trunk-svn/gcc-4.6.3/x86_64-w64-mingw32/include«
wird ignoriert
nicht vorhandenes Verzeichnis
»d:/opt/devel/gnu/gcc/MINGW_NT/x86_64-w64-mingw32/mingw-w64-runtime-trunk-svn/gcc-4.6.3/x86_64-w64-mingw32/sys-include«
wird ignoriert
nicht vorhandenes Verzeichnis
»d:\msys\scratch\tmp.pzgxgetuxt\gcc-4.6.3\gcc-4.6.3\gcc\../lib/gcc/x86_64-w64-mingw32/4.6.3/include«
wird ignoriert
nicht vorhandenes Verzeichnis
»d:\msys\scratch\tmp.pzgxgetuxt\gcc-4.6.3\gcc-4.6.3\gcc\../lib/gcc/x86_64-w64-mingw32/4.6.3/include-fixed«
wird ignoriert
nicht vorhandenes Verzeichnis
»d:\msys\scratch\tmp.pzgxgetuxt\gcc-4.6.3\gcc-4.6.3\gcc\../lib/gcc/x86_64-w64-mingw32/4.6.3/../../../../x86_64-w64-mingw32/include«
wird ignoriert
nicht vorhandenes Verzeichnis
»d:/msys/scratch/tmp.pzgxgetuxt/gcc-4.6.3/gcc-4.6.3/lib/gcc/x86_64-w64-mingw32/4.6.3/include«
wird ignoriert
nicht vorhandenes Verzeichnis
»D:/x86_64-w64-trunkd:/opt/devel/gnu/gcc/MINGW_NT/x86_64-w64-mingw32/mingw-w64-runtime-trunk-svn/gcc-4.6.3/lib/gcc/x86_64-w64-mingw32/4.6.3/../../../../include«
wird ignoriert
nicht vorhandenes Verzeichnis
»d:/msys/scratch/tmp.pzgxgetuxt/gcc-4.6.3/gcc-4.6.3/lib/gcc/x86_64-w64-mingw32/4.6.3/include-fixed«
wird ignoriert
nicht vorhandenes Verzeichnis
»d:/msys/scratch/tmp.pzgxgetuxt/gcc-4.6.3/gcc-4.6.3/x86_64-w64-mingw32/include«
wird ignoriert
#include "..." - Suche beginnt hier:
#include <...> - Suche beginnt hier:
D:/msys/SCRATCH/tmp.pzGXGetUXT/gcc-4.6.3/gcc-4.6.3/gcc/include
D:/msys/SCRATCH/tmp.pzGXGetUXT/gcc-4.6.3/gcc-4.6.3/gcc/include-fixed
D:/x86_64-w64-trunk/mingw/include
Ende der Suchliste.
As you see here the important search path component
D:/x86_64-w64-trunk/mingw/include is ok.
For gcc-4.7.0 in contrast I get:
ignoring nonexistent directory
"d:/opt/devel/gnu/gcc/MINGW_NT/x86_64-w64-mingw32/mingw-w64-runtime-trunk-svn/gcc-4.7.0/x86_64-w64-mingw32/include"
ignoring nonexistent directory
"d:/opt/devel/gnu/gcc/MINGW_NT/x86_64-w64-mingw32/mingw-w64-runtime-trunk-svn/gcc-4.7.0/mingw/include"
ignoring nonexistent directory
"d:/opt/devel/gnu/gcc/MINGW_NT/x86_64-w64-mingw32/mingw-w64-runtime-trunk-svn/gcc-4.7.0/x86_64-w64-mingw32/include"
ignoring nonexistent directory
"d:/opt/devel/gnu/gcc/MINGW_NT/x86_64-w64-mingw32/mingw-w64-runtime-trunk-svn/gcc-4.7.0/x86_64-w64-mingw32/sys-include"
ignoring nonexistent directory
"d:\msys\scratch\tmp.pzgxgetuxt\gcc-4.7.0\gcc-4.7.0\gcc\../lib/gcc/x86_64-w64-mingw32/4.7.0/include"
ignoring nonexistent directory
"d:\msys\scratch\tmp.pzgxgetuxt\gcc-4.7.0\gcc-4.7.0\gcc\../lib/gcc/x86_64-w64-mingw32/4.7.0/include-fixed"
ignoring nonexistent directory
"d:\msys\scratch\tmp.pzgxgetuxt\gcc-4.7.0\gcc-4.7.0\gcc\../lib/gcc/x86_64-w64-mingw32/4.7.0/../../../../x86_64-w64-mingw32/include"
ignoring nonexistent directory
"d:/msys/scratch/tmp.pzgxgetuxt/gcc-4.7.0/gcc-4.7.0/lib/gcc/x86_64-w64-mingw32/4.7.0/include"
ignoring nonexistent directory
"D:/x86_64-w64-trunkd:/opt/devel/gnu/gcc/MINGW_NT/x86_64-w64-mingw32/mingw-w64-runtime-trunk-svn/gcc-4.7.0/lib/gcc/x86_64-w64-mingw32/4.7.0/../../../../include"
ignoring nonexistent directory
"d:/msys/scratch/tmp.pzgxgetuxt/gcc-4.7.0/gcc-4.7.0/lib/gcc/x86_64-w64-mingw32/4.7.0/include-fixed"
ignoring nonexistent directory
"d:/msys/scratch/tmp.pzgxgetuxt/gcc-4.7.0/gcc-4.7.0/x86_64-w64-mingw32/include"
ignoring nonexistent directory "D:/x86_64-w64-trunkD:/msys/mingw/include"
#include "..." search starts here:
#include <...> search starts here:
D:/msys/SCRATCH/tmp.pzGXGetUXT/gcc-4.7.0/gcc-4.7.0/gcc/include
D:/msys/SCRATCH/tmp.pzGXGetUXT/gcc-4.7.0/gcc-4.7.0/gcc/include-fixed
Here the composition for the include search path gets wrong:
ignoring nonexistent directory "D:/x86_64-w64-trunkD:/msys/mingw/include"
The component /mingw/include is converted to an absolut windows path before
it's appended to the sysroot. That's palin wrong.
The library search path is ok.
Any idea how to solve this?
More information about the Gcc-bugs
mailing list