This is the mail archive of the gcc-help@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: Problems bootstrapping GCC on x86_64-unknown-cygwin


On 9/25/2014 8:56 AM, Steven Bosscher wrote:
> Hello,
>
> I'd like to bootstrap GCC5 on cygwin64, but my builds fail.
>
> The tail of my buildlog looks like this:
>
> ----- 8< -----
> make[3]: Leaving directory '/home/steven/devel/build-orig/gcc'
> mkdir -p -- x86_64-unknown-cygwin/libgcc
> Checking multilib configuration for libgcc...
> Configuring stage 1 in x86_64-unknown-cygwin/libgcc
> configure: creating cache ./config.cache
> checking build system type... x86_64-unknown-cygwin
> checking host system type... x86_64-unknown-cygwin
> checking for --enable-version-specific-runtime-libs... no
> checking for a BSD-compatible install... /usr/bin/install -c
> checking for gawk... gawk
> checking for x86_64-unknown-cygwin-ar... ar
> checking for x86_64-unknown-cygwin-lipo... lipo
> checking for x86_64-unknown-cygwin-nm... /home/steven/devel/build-orig/./gcc/nm
> checking for x86_64-unknown-cygwin-ranlib... ranlib
> checking for x86_64-unknown-cygwin-strip... strip
> checking whether ln -s works... yes
> checking for x86_64-unknown-cygwin-gcc...
> /home/steven/devel/build-orig/./gcc/xgcc
> -B/home/steven/devel/build-orig/./gcc/
> -B/usr/local/x86_64-unknown-cygwin/bin/
> -B/usr/local/x86_64-unknown-cygwin/lib/ -isystem
> /usr/local/x86_64-unknown-cygwin/include -isystem
> /usr/local/x86_64-unknown-cygwin/sys-include
> checking for C compiler default output file name...
> configure: error: in
> `/home/steven/devel/build-orig/x86_64-unknown-cygwin/libgcc':
> configure: error: C compiler cannot create executables
> See `config.log' for more details.
> Makefile:13857: recipe for target 'configure-stage1-target-libgcc' failed
> make[2]: *** [configure-stage1-target-libgcc] Error 77
> make[2]: Leaving directory '/home/steven/devel/build-orig'
> Makefile:18001: recipe for target 'stage1-bubble' failed
> make[1]: *** [stage1-bubble] Error 2
> make[1]: Leaving directory '/home/steven/devel/build-orig'
> Makefile:894: recipe for target 'all' failed
> make: *** [all] Error 2
> ----- 8< -----
>
>
> The problem is in configure for libgcc. config.log shows this:
>
> ----- 8< -----
> configure:3379: $? = 1
> configure:3395: /home/steven/devel/build-orig/./gcc/xgcc
> -B/home/steven/devel/build-orig/./gcc/
> -B/usr/local/x86_64-unknown-cygwin/bin/
> -B/usr/local/x86_64-unknown-cygwin/lib/ -isystem
> /usr/local/x86_64-unknown-cygwin/include -isystem
> /usr/local/x86_64-unknown-cygwin/sys-include    -o conftest -g -O2
> conftest.c  >&5
> /usr/lib/gcc/x86_64-pc-cygwin/4.8.3/../../../../x86_64-pc-cygwin/bin/ld:
> cannot find crtbegin.o: No such file or directory
> /usr/lib/gcc/x86_64-pc-cygwin/4.8.3/../../../../x86_64-pc-cygwin/bin/ld:
> cannot find -lgcc_s
> /usr/lib/gcc/x86_64-pc-cygwin/4.8.3/../../../../x86_64-pc-cygwin/bin/ld:
> cannot find -lgcc
> /usr/lib/gcc/x86_64-pc-cygwin/4.8.3/../../../../x86_64-pc-cygwin/bin/ld:
> cannot find -lgcc_s
> /usr/lib/gcc/x86_64-pc-cygwin/4.8.3/../../../../x86_64-pc-cygwin/bin/ld:
> cannot find -lgcc
> /usr/lib/gcc/x86_64-pc-cygwin/4.8.3/../../../../x86_64-pc-cygwin/bin/ld:
> cannot find crtend.o: No such file or directory
> configure:3398: $? = 0
> configure:3427: checking for C compiler default output file name
> configure:3449: /home/steven/devel/build-orig/./gcc/xgcc
> -B/home/steven/devel/build-orig/./gcc/
> -B/usr/local/x86_64-unknown-cygwin/bin/
> -B/usr/local/x86_64-unknown-cygwin/lib/ -isystem
> /usr/local/x86_64-unknown-cygwin/include -isystem
> /usr/local/x86_64-unknown-cygwin/sys-include    -g -O2   conftest.c
>> &5
> /usr/lib/gcc/x86_64-pc-cygwin/4.8.3/../../../../x86_64-pc-cygwin/bin/ld:
> cannot find crtbegin.o: No such file or directory
> /usr/lib/gcc/x86_64-pc-cygwin/4.8.3/../../../../x86_64-pc-cygwin/bin/ld:
> cannot find -lgcc_s
> /usr/lib/gcc/x86_64-pc-cygwin/4.8.3/../../../../x86_64-pc-cygwin/bin/ld:
> cannot find -lgcc
> /usr/lib/gcc/x86_64-pc-cygwin/4.8.3/../../../../x86_64-pc-cygwin/bin/ld:
> cannot find -lgcc_s
> /usr/lib/gcc/x86_64-pc-cygwin/4.8.3/../../../../x86_64-pc-cygwin/bin/ld:
> cannot find -lgcc
> /usr/lib/gcc/x86_64-pc-cygwin/4.8.3/../../../../x86_64-pc-cygwin/bin/ld:
> cannot find crtend.o: No such file or directory
> configure:3453: $? = 0
> configure:3490: result:
> 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.  */
> |
> | int
> | main ()
> | {
> |
> |   ;
> |   return 0;
> | }
> configure:3496: error: in
> `/home/steven/devel/build-orig/x86_64-unknown-cygwin/libgcc':
> configure:3500: error: C compiler cannot create executables
> See `config.log' for more details.
> ----- 8< -----
>
>
> I've seen builds fail this way before and just gave up, but this time
> I'd like to know: What am I doing wrong?!
>
> Configuration same as Tim Prince (in CC) who reports test results for
> this on gcc-testresults:
> ----- 8< -----
> $ cat gcc/configargs.h
> /* Generated automatically. */
> static const char configuration_arguments[] = "../trunk/configure
> --target=x86_64-unknown-cygwin --enable-languages=c,c++,fortran
> --disable-libsanitizer --enable-libgomp --enable-threads=posix
> --disable-__cxa_atexit --with-dwarf2 --without-libiconv-prefix
> --without-libintl-prefix --with-system-zlib --disable-werror
> --without-cloog --without-isl --disable-nls";
> static const char thread_model[] = "posix";
>
> static const struct {
>   const char *name, *value;
> } configure_default_options[] = { { "cpu", "generic" }, { "arch", "x86-64" } };
> ----- 8< -----
>
>
configure:3395 normally fails this way.  Then it proceeds to
configure:3586: checking for suffix of object....
My configure line:
../configure --prefix=/usr/local/gcc5.0 --enable-languages='c c++
fortran' --enable-libgomp --enable-threads=posix --disable-__cxa_atexit
--with-dwarf2 --without-libiconv-prefix --without-libintl-prefix
--with-system-zlib --disable-werror --without-cloog --without-isl
When I bootstrap from a distributed gcc, I normally use 4.9.0, whose
libraries work also with 5.0.  4.9 is more reliable than 4.8.3, at least
when using -march=native on an AVX2.
I have frequently to clean out the build directory and reconfigure after
updating by svn (that usually overcomes those stage1-bubble failures). 
svn update is slow enough that it may be incomplete due to updates being
posted while I am updating.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]