From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:55231) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1d2wPN-00028J-29 for qemu-devel@nongnu.org; Tue, 25 Apr 2017 05:05:18 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1d2wPM-0003ri-4g for qemu-devel@nongnu.org; Tue, 25 Apr 2017 05:05:17 -0400 Received: from mail-wr0-x22d.google.com ([2a00:1450:400c:c0c::22d]:36152) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1d2wPL-0003qE-UG for qemu-devel@nongnu.org; Tue, 25 Apr 2017 05:05:16 -0400 Received: by mail-wr0-x22d.google.com with SMTP id l50so31132333wrc.3 for ; Tue, 25 Apr 2017 02:05:15 -0700 (PDT) MIME-Version: 1.0 In-Reply-To: <87pog0q2xz.fsf@abhimanyu.i-did-not-set--mail-host-address--so-tickle-me> References: <20170425083555.13547-1-nikunj@linux.vnet.ibm.com> <87pog0q2xz.fsf@abhimanyu.i-did-not-set--mail-host-address--so-tickle-me> From: Peter Maydell Date: Tue, 25 Apr 2017 10:04:54 +0100 Message-ID: Content-Type: text/plain; charset=UTF-8 Subject: Re: [Qemu-devel] [PATCH RFC] configure: fix clang failure for libatomic List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Nikunj A Dadhania Cc: "qemu-ppc@nongnu.org" , QEMU Developers , David Gibson , Richard Henderson , =?UTF-8?B?QWxleCBCZW5uw6ll?= , Paolo Bonzini On 25 April 2017 at 09:58, Nikunj A Dadhania wrote: > I was trying out the program in the configure script with clang and I do > get errors without libatomic: > > $ clang /tmp/atomic.c > /tmp/atomic.c:6:7: warning: implicit declaration of function '__atomic_load_8' is invalid in C99 [-Wimplicit-function-declaration] > y = __atomic_load_8(&x, 0); > ^ > /tmp/atomic.c:7:3: warning: implicit declaration of function '__atomic_store_8' is invalid in C99 [-Wimplicit-function-declaration] > __atomic_store_8(&x, y, 0); > ^ > /tmp/atomic.c:8:3: warning: implicit declaration of function '__atomic_compare_exchange_8' is invalid in C99 [-Wimplicit-function-declaration] > __atomic_compare_exchange_8(&x, &y, x, 0, 0, 0); > ^ > /tmp/atomic.c:9:3: warning: implicit declaration of function '__atomic_exchange_8' is invalid in C99 [-Wimplicit-function-declaration] > __atomic_exchange_8(&x, y, 0); > ^ > /tmp/atomic.c:10:3: warning: implicit declaration of function '__atomic_fetch_add_8' is invalid in C99 [-Wimplicit-function-declaration] > __atomic_fetch_add_8(&x, y, 0); > ^ > 5 warnings generated. > /tmp/atomic-1660e0.o: In function `main': > /tmp/atomic.c:(.text+0x28): undefined reference to `__atomic_load_8' > /tmp/atomic.c:(.text+0x40): undefined reference to `__atomic_store_8' > /tmp/atomic.c:(.text+0x69): undefined reference to `__atomic_compare_exchange_8' > /tmp/atomic.c:(.text+0x7d): undefined reference to `__atomic_exchange_8' > /tmp/atomic.c:(.text+0x91): undefined reference to `__atomic_fetch_add_8' > clang-3.9: error: linker command failed with exit code 1 (use -v to see invocation) > > With -latomic, the linker succeeds in getting the binary. What host is this on ? thanks -- PMM