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: Newb build fails: -Werrors then Bootstrap comparison failure!


On Wed, 5 Sep 2018 at 21:14, will wray <wjwray@gmail.com> wrote:
>
> Following instructions here: https://gcc.gnu.org/install/index.html
> on Fedora 28 with gcc (GCC) 8.1.1 20180712 (Red Hat 8.1.1-5).
>
> First, the build hit a couple of -Werror fails so I reconfigured with
> -disable-werror
> then I get: Comparing stages 2 and 3, Bootstrap comparison failure!
>
> Do I disable comparison? Disable bootstrap?
> Any other suggestions on doing a fresh build?
>
> > svn checkout svn://gcc.gnu.org/svn/gcc/trunk gcc
> > mkdir build
> > cd build
> > mkdir gcc
> > mkdir install
> > cd gcc
> > ../../gcc/configure --prefix=$HOME/repos/build/install
> --enable-languages=c,c++ --disable-multilib
> > make BOOT_CFLAGS='-O' bootstrap
>
> ...
> ./insn-opinit.h:358:40: error: ‘icode’ may be used uninitialized in this
> function [-Werror=maybe-uninitialized]
> 358 | #define GEN_FCN(CODE) (insn_data[CODE].genfun)
> ...
> ../../../gcc/gcc/config/i386/i386.c:4514:32: error: ‘mask’ may be used
> uninitialized in this function [-Werror=maybe-uninitialized]
> 4514 |    opts->x_recip_mask_explicit |= mask;
>      |    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~
> cc1plus: all warnings being treated as errors
> ...
>
> > make clean

"make clean" is known to not do a very good job of cleaning up. Just
delete the entire ~/repos/build/gcc directory and start again from the
configure command.


> > ../../gcc/configure --prefix=$HOME/repos/build/install

The installation docs say "building where objdir is a subdirectory of
srcdir is unsupported."

It can work, but I avoid it. Build in a directory outside the source dir.


> --enable-languages=c,c++ --disable-multilib -disable-werror
> > make
>
> ...
> Comparing stages 2 and 3
> Bootstrap comparison failure!
> gcc/gcc.o differs
> gcc/plugin.o differs
> ...

I don't know why you'd get a comparison failure. If it still happens
after starting again in an empty directory try it without the
BOOT_CFLAGS=-O


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