* [Qemu-devel] [FYI] Need to do a full rebuild if you are on Linux x86 host
@ 2011-11-22 0:25 Anthony Liguori
2011-11-22 9:41 ` Gerd Hoffmann
0 siblings, 1 reply; 4+ messages in thread
From: Anthony Liguori @ 2011-11-22 0:25 UTC (permalink / raw)
To: qemu-devel; +Cc: Avi Kivity, kvm-devel
Due to this commit:
commit 40d6444e91c6ab17e5e8ab01d4eece90cbc4afed
Author: Avi Kivity <avi@redhat.com>
Date: Tue Nov 15 20:12:17 2011 +0200
configure: build position independent executables on x86-Linux hosts
PIE binaries cannot be linked with non-PIE binaries and make is not smart enough
to rebuild when the CFLAGS have changed.
Regards,
Anthony Liguori
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [Qemu-devel] [FYI] Need to do a full rebuild if you are on Linux x86 host
2011-11-22 0:25 [Qemu-devel] [FYI] Need to do a full rebuild if you are on Linux x86 host Anthony Liguori
@ 2011-11-22 9:41 ` Gerd Hoffmann
2011-11-22 10:01 ` Paolo Bonzini
0 siblings, 1 reply; 4+ messages in thread
From: Gerd Hoffmann @ 2011-11-22 9:41 UTC (permalink / raw)
To: Anthony Liguori; +Cc: qemu-devel, kvm-devel, Avi Kivity
On 11/22/11 01:25, Anthony Liguori wrote:
> Due to this commit:
>
> commit 40d6444e91c6ab17e5e8ab01d4eece90cbc4afed
> Author: Avi Kivity <avi@redhat.com>
> Date: Tue Nov 15 20:12:17 2011 +0200
>
> configure: build position independent executables on x86-Linux hosts
>
> PIE binaries cannot be linked with non-PIE binaries and make is not
> smart enough to rebuild when the CFLAGS have changed.
Breaks build on RHEL-5 and probably also other not-so-recent linux distros.
[ ... ]
CC i386-softmmu/exec.o
[ ... ]
LINK i386-softmmu/qemu-system-i386
/usr/bin/ld: exec.o: relocation R_X86_64_TPOFF32 against
`tls__cpu_single_env' can not be used when making a shared object;
recompile with -fPIC
exec.o: could not read symbols: Bad value
collect2: ld returned 1 exit status
make[1]: *** [qemu-system-i386] Error 1
make: *** [subdir-i386-softmmu] Error 2
cheers,
Gerd
PS: for those with ipv6 connectivity the full log is available at
http://spunk.home.kraxel.org/bb/builders/rhel5-default/builds/98/steps/compile/logs/stdio
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [Qemu-devel] [FYI] Need to do a full rebuild if you are on Linux x86 host
2011-11-22 9:41 ` Gerd Hoffmann
@ 2011-11-22 10:01 ` Paolo Bonzini
2011-11-22 10:05 ` Avi Kivity
0 siblings, 1 reply; 4+ messages in thread
From: Paolo Bonzini @ 2011-11-22 10:01 UTC (permalink / raw)
To: Gerd Hoffmann; +Cc: Avi Kivity, qemu-devel, kvm-devel
On 11/22/2011 10:41 AM, Gerd Hoffmann wrote:
> On 11/22/11 01:25, Anthony Liguori wrote:
>> Due to this commit:
>>
>> commit 40d6444e91c6ab17e5e8ab01d4eece90cbc4afed
>> Author: Avi Kivity<avi@redhat.com>
>> Date: Tue Nov 15 20:12:17 2011 +0200
>>
>> configure: build position independent executables on x86-Linux hosts
>>
>> PIE binaries cannot be linked with non-PIE binaries and make is not
>> smart enough to rebuild when the CFLAGS have changed.
>
> Breaks build on RHEL-5 and probably also other not-so-recent linux distros.
>
> [ ... ]
> CC i386-softmmu/exec.o
> [ ... ]
> LINK i386-softmmu/qemu-system-i386
> /usr/bin/ld: exec.o: relocation R_X86_64_TPOFF32 against
> `tls__cpu_single_env' can not be used when making a shared object;
> recompile with -fPIC
> exec.o: could not read symbols: Bad value
> collect2: ld returned 1 exit status
> make[1]: *** [qemu-system-i386] Error 1
> make: *** [subdir-i386-softmmu] Error 2
It can be worked around by replacing "-fpie" with "-fpic" or (to avoid a
rather bad performance degradation) "-fpic -ftls-model=initial-exec" but
it's a bug in the linker and it should be fixed in RHEL:
http://sourceware.org/bugzilla/show_bug.cgi?id=10434 (upstream BZ)
https://bugzilla.redhat.com/show_bug.cgi?id=755872 (RHEL BZ)
Paolo
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [Qemu-devel] [FYI] Need to do a full rebuild if you are on Linux x86 host
2011-11-22 10:01 ` Paolo Bonzini
@ 2011-11-22 10:05 ` Avi Kivity
0 siblings, 0 replies; 4+ messages in thread
From: Avi Kivity @ 2011-11-22 10:05 UTC (permalink / raw)
To: Paolo Bonzini; +Cc: kvm-devel, Gerd Hoffmann, qemu-devel
On 11/22/2011 12:01 PM, Paolo Bonzini wrote:
> On 11/22/2011 10:41 AM, Gerd Hoffmann wrote:
>> On 11/22/11 01:25, Anthony Liguori wrote:
>>> Due to this commit:
>>>
>>> commit 40d6444e91c6ab17e5e8ab01d4eece90cbc4afed
>>> Author: Avi Kivity<avi@redhat.com>
>>> Date: Tue Nov 15 20:12:17 2011 +0200
>>>
>>> configure: build position independent executables on x86-Linux
>>> hosts
>>>
>>> PIE binaries cannot be linked with non-PIE binaries and make is not
>>> smart enough to rebuild when the CFLAGS have changed.
>>
>> Breaks build on RHEL-5 and probably also other not-so-recent linux
>> distros.
>>
>> [ ... ]
>> CC i386-softmmu/exec.o
>> [ ... ]
>> LINK i386-softmmu/qemu-system-i386
>> /usr/bin/ld: exec.o: relocation R_X86_64_TPOFF32 against
>> `tls__cpu_single_env' can not be used when making a shared object;
>> recompile with -fPIC
>> exec.o: could not read symbols: Bad value
>> collect2: ld returned 1 exit status
>> make[1]: *** [qemu-system-i386] Error 1
>> make: *** [subdir-i386-softmmu] Error 2
>
> It can be worked around by replacing "-fpie" with "-fpic" or (to avoid
> a rather bad performance degradation) "-fpic -ftls-model=initial-exec"
> but it's a bug in the linker and it should be fixed in RHEL:
>
> http://sourceware.org/bugzilla/show_bug.cgi?id=10434 (upstream BZ)
> https://bugzilla.redhat.com/show_bug.cgi?id=755872 (RHEL BZ)
I'll extend the configure build test to include a tls variable. If
anyone's interested in tweaking it for older distros, that's for 1.1.
--
error compiling committee.c: too many arguments to function
^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2011-11-22 10:06 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2011-11-22 0:25 [Qemu-devel] [FYI] Need to do a full rebuild if you are on Linux x86 host Anthony Liguori
2011-11-22 9:41 ` Gerd Hoffmann
2011-11-22 10:01 ` Paolo Bonzini
2011-11-22 10:05 ` Avi Kivity
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).