[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Fails to build with GCC from Debian Sid/unstable: `/usr/bin/ld: -r a
From: |
Paul Menzel |
Subject: |
Re: Fails to build with GCC from Debian Sid/unstable: `/usr/bin/ld: -r and -pie may not be used together` |
Date: |
Tue, 13 Dec 2016 23:45:55 +0100 |
Dear Andrei,
I am sorry for the late reply.
Am Samstag, den 26.11.2016, 20:07 +0300 schrieb Andrei Borzenkov:
> 26.11.2016 19:48, Paul Menzel пишет:
> > Using Debian Sid/unstable with GCC 6.2, which has PIE enabled by
> > default *in Debian* since some time [1], building GRUB for the platform
> > *coreboot* fails.
> >
> > ```
> > $ gcc --version
> > gcc (Debian 6.2.1-5) 6.2.1 20161124
> > […]
> > $ ld --version
> > GNU ld (GNU Binutils for Debian) 2.27.51.20161124
> > […]
> > $ git log --oneline | head -1
> > 0d23457 efi: Move fdt helper into own file
> > $ ./autogen.sh
> > […]
> > $ mkdir build
> > $ cd build
> > $ ../configure --with-platform=coreboot
> > […]
> > $ make -j
> > […]
> > gcc -DHAVE_CONFIG_H -I. -I../../grub-core -I.. -Wall -W
> > -DGRUB_MACHINE_COREBOOT=1 -DGRUB_MACHINE=I386_COREBOOT -m32 -nostdinc
> > -isystem /usr/lib/gcc/i686-linux-gnu/6/include -I../../include -I../include
> > -DGRUB_FILE=\"bus/usb/serial/common.c\" -I. -I../../grub-core -I.. -I../..
> > -I../../include -I../include -I../../grub-core/lib/libgcrypt-grub/src/
> > -D_FILE_OFFSET_BITS=64 -Os -Wall -W -Wshadow -Wpointer-arith -Wundef
> > -Wchar-subscripts -Wcomment -Wdeprecated-declarations
> > -Wdisabled-optimization -Wdiv-by-zero -Wfloat-equal -Wformat-extra-args
> > -Wformat-security -Wformat-y2k -Wimplicit -Wimplicit-function-declaration
> > -Wimplicit-int -Wmain -Wmissing-braces -Wmissing-format-attribute
> > -Wmultichar -Wparentheses -Wreturn-type -Wsequence-point -Wshadow
> > -Wsign-compare -Wswitch -Wtrigraphs -Wunknown-pragmas -Wunused
> > -Wunused-function -Wunused-label -Wunused-parameter -Wunused-value
> > -Wunused-variable -Wwrite-strings -Wnested-externs -Wstrict-prototypes -g
> > -Wredundant-decls -Wmissing-prototypes -Wmissing-declarations -Wextra
> > -Wattributes -Wendif-labels -Winit-self -Wint-to-pointer-cast -Winvalid-pch
> > -Wmissing-field-initializers -Wnonnull -Woverflow -Wvla
> > -Wpointer-to-int-cast -Wstrict-aliasing -Wvariadic-macros
> > -Wvolatile-register-var -Wpointer-sign -Wmissing-include-dirs
> > -Wmissing-prototypes -Wmissing-declarations -Wformat=2 -march=i386 -m32
> > -mrtd -mregparm=3 -falign-jumps=1 -falign-loops=1 -falign-functions=1
> > -freg-struct-return -mno-mmx -mno-sse -mno-sse2 -mno-sse3 -mno-3dnow
> > -msoft-float -fno-dwarf2-cfi-asm -mno-stack-arg-probe
> > -fno-asynchronous-unwind-tables -fno-unwind-tables -Qn -fno-PIE -fno-pie
> > -fno-stack-protector -Wtrampolines -Werror -ffreestanding -MT
> > bus/usb/serial/usbserial_common_module-common.o -MD -MP -MF
> > bus/usb/serial/.deps-core/usbserial_common_module-common.Tpo -c -o
> > bus/usb/serial/usbserial_common_module-common.o `test -f
> > 'bus/usb/serial/common.c' || echo '../../grub-core/'`bus/usb/serial/common.c
> > /usr/bin/ld: -r and -pie may not be used together
> > collect2: error: ld returned 1 exit status
> > Makefile:27010: die Regel für Ziel „trig.module“ scheiterte
> > make[3]: *** [trig.module] Fehler 1
> > make[3]: *** Es wird auf noch nicht beendete Prozesse gewartet...
> > […]
> > ```
> >
> > Should PIE be disabled explicitly?
> >
> >
>
> Does patch in this message work for you?
>
> http://lists.gnu.org/archive/html/bug-grub/2016-11/msg00011.html
Yes, with this patch applied, I could successfully build GRUB.
Thanks,
PAul
signature.asc
Description: This is a digitally signed message part
- Re: Fails to build with GCC from Debian Sid/unstable: `/usr/bin/ld: -r and -pie may not be used together`,
Paul Menzel <=