From mboxrd@z Thu Jan 1 00:00:00 1970 From: Avi Kivity Subject: Re: [FYI] Need to do a full rebuild if you are on Linux x86 host Date: Tue, 22 Nov 2011 12:05:52 +0200 Message-ID: <4ECB7400.4030803@redhat.com> References: <4ECAEBDD.2070805@codemonkey.ws> <4ECB6E3A.2000804@redhat.com> <4ECB7311.106@redhat.com> Mime-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit Cc: Gerd Hoffmann , Anthony Liguori , qemu-devel , kvm-devel To: Paolo Bonzini Return-path: Received: from mx1.redhat.com ([209.132.183.28]:21248 "EHLO mx1.redhat.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752823Ab1KVKF5 (ORCPT ); Tue, 22 Nov 2011 05:05:57 -0500 In-Reply-To: <4ECB7311.106@redhat.com> Sender: kvm-owner@vger.kernel.org List-ID: 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 >>> 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