Re: [kbuild-all] Re: gcc-5: error: -gz is not supported in this configuration

From: Arvind Sankar
Date: Tue Jun 09 2020 - 23:23:47 EST


On Tue, Jun 09, 2020 at 11:12:25PM -0400, Arvind Sankar wrote:
> On Wed, Jun 10, 2020 at 09:49:01AM +0800, Rong Chen wrote:
> >
> >
> > On 6/10/20 8:58 AM, Fangrui Song wrote:
> > > On 2020-06-10, Rong Chen wrote:
> > >>
> > >>
> > >> On 6/10/20 1:49 AM, Fangrui Song wrote:
> > >>> On 2020-06-09, Nick Desaulniers wrote:
> > >>>> On Tue, Jun 9, 2020 at 6:12 AM kernel test robot <lkp@xxxxxxxxx>
> > >>>> wrote:
> > >>>>>
> > >>>>> tree:
> > >>>>> https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
> > >>>>> master
> > >>>>> head:ÂÂ abfbb29297c27e3f101f348dc9e467b0fe70f919
> > >>>>> commit: 10e68b02c861ccf2b3adb59d3f0c10dc6b5e3ace Makefile: support
> > >>>>> compressed debug info
> > >>>>> date:ÂÂ 12 days ago
> > >>>>> config: x86_64-randconfig-r032-20200609 (attached as .config)
> > >>>>> compiler: gcc-5 (Ubuntu 5.5.0-12ubuntu1) 5.5.0 20171010
> > >>>>> reproduce (this is a W=1 build):
> > >>>>> ÂÂÂÂÂÂÂ git checkout 10e68b02c861ccf2b3adb59d3f0c10dc6b5e3ace
> > >>>>> ÂÂÂÂÂÂÂ # save the attached .config to linux build tree
> > >>>>> ÂÂÂÂÂÂÂ make W=1 ARCH=x86_64
> > >>>>>
> > >>>>> If you fix the issue, kindly add following tag as appropriate
> > >>>>> Reported-by: kernel test robot <lkp@xxxxxxxxx>
> > >>>>>
> > >>>>> All errors (new ones prefixed by >>, old ones prefixed by <<):
> > >>>>>
> > >>>>>>> gcc-5: error: -gz is not supported in this configuration
> > >>>>
> > >>>> Hmm...I wonder if the feature detection is incomplete? I suspect it's
> > >>>> possible to not depend on zlib.
> > >>>>
> > >>>>> make[2]: *** [scripts/Makefile.build:277: scripts/mod/empty.o]
> > >>>>> Error 1
> > >>>>> make[2]: Target '__build' not remade because of errors.
> > >>>>> make[1]: *** [Makefile:1169: prepare0] Error 2
> > >>>>> make[1]: Target 'prepare' not remade because of errors.
> > >>>>> make: *** [Makefile:185: __sub-make] Error 2
> > >>>
> > >>> The output of gcc-5 -v --version on that machine may help. The
> > >>> convoluted gcc_cv_ld_compress_de logic in gcc/configure.ac may be
> > >>> related, but I can't find any mistake that our
> > >>> CONFIG_DEBUG_INFO_COMPRESSED conditions may make.
> > >>
>
> The output of gcc-5 -dumpspecs may also be useful.
>
> The exact Kconfig check should have been
> gcc-5 -Werror -gz=zlib -S -x c /dev/null -o /dev/null
>
> I can't see how that would succeed if the a.c test didn't but maybe just
> in case?

Oh wait, -S instead of -c. Which means it runs neither the assembler nor
the linker, so gcc won't error out. But if that gcc was originally
_configured_ with a version of binutils that doesn't support -gz=zlib,
it will give an error on -c regardless of whether the runtime binutils
would actually support it or not.