From owner-freebsd-current@FreeBSD.ORG Wed May 4 07:12:20 2011 Return-Path: Delivered-To: freebsd-current@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 2668D1065670 for ; Wed, 4 May 2011 07:12:20 +0000 (UTC) (envelope-from ohartman@mail.zedat.fu-berlin.de) Received: from outpost1.zedat.fu-berlin.de (outpost1.zedat.fu-berlin.de [130.133.4.66]) by mx1.freebsd.org (Postfix) with ESMTP id D72AF8FC0C for ; Wed, 4 May 2011 07:12:19 +0000 (UTC) Received: from inpost2.zedat.fu-berlin.de ([130.133.4.69]) by outpost1.zedat.fu-berlin.de (Exim 4.69) with esmtp (envelope-from ) id <1QHWFu-0000QJ-S2>; Wed, 04 May 2011 09:12:18 +0200 Received: from e178021236.adsl.alicedsl.de ([85.178.21.236] helo=thor.walstatt.dyndns.org) by inpost2.zedat.fu-berlin.de (Exim 4.69) with esmtpsa (envelope-from ) id <1QHWFu-0002rQ-Od>; Wed, 04 May 2011 09:12:18 +0200 Message-ID: <4DC0FC52.8070701@mail.zedat.fu-berlin.de> Date: Wed, 04 May 2011 09:12:18 +0200 From: "O. Hartmann" User-Agent: Mozilla/5.0 (X11; U; FreeBSD amd64; en-US; rv:1.9.2.17) Gecko/20110429 Lightning/1.0b2 Thunderbird/3.1.10 MIME-Version: 1.0 To: Dimitry Andric References: <4DBDB8D4.6050102@mail.zedat.fu-berlin.de> <4DC04F29.2050401@mail.zedat.fu-berlin.de> <4DC0F98D.3020601@FreeBSD.org> In-Reply-To: <4DC0F98D.3020601@FreeBSD.org> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: quoted-printable X-Originating-IP: 85.178.21.236 X-Mailman-Approved-At: Wed, 04 May 2011 11:15:41 +0000 Cc: Olivier Smedts , freebsd-current@freebsd.org Subject: Re: Building FreeBSD 9.0-CUR/amd64 with CLANG fails X-BeenThere: freebsd-current@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussions about the use of FreeBSD-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 04 May 2011 07:12:20 -0000 On 05/04/11 09:00, Dimitry Andric wrote: > On 2011-05-03 20:53, O. Hartmann wrote: > ... >>>> ld -m elf_i386_fbsd -Y P,/usr/obj/usr/src/lib32/usr/lib32 =EF=BF=BD-= o >>>> gcrt1.o -r >>>> crt1_s.o gcrt1_c.o >>>> ld: Relocatable linking with relocations from format >>>> elf64-x86-64-freebsd >>>> (crt1_s.o) to format elf32-i386-freebsd (gcrt1.o) is not supported > ... >> Today, I tried again, after CLANG/LLVM has been updated to version 3.0= =2E >> Same error. >> >> This is the addendum I made to the /etc/make.conf: >> >> ## >> ## CLANG >> ## >> .if defined(USE_CLANG) >> .if !defined(CC) || ${CC} =3D=3D "cc" >> CC=3Dclang >> .endif >> .if !defined(CXX) || ${CXX} =3D=3D "c++" >> CXX=3Dclang++ >> .endif >> # Don't die on warnings >> NO_WERROR=3D >> WERROR=3D >> # Don't forget this when using Jails! >> NO_FSCHG=3D >> .endif > > Ok, that looks good, I use a similar construction. However, in my case > it works fine, so there must be something special on your system that > breaks the build. > > What happens here, is that the 32-bit stage on amd64 fails, because it > tries to link together 64-bit and 32-bit object files, which is not > allowed. This can occur if Makefile.inc1 cannot set CC to the correct > value, but there might also be something else going on. > > To debug this further, can you please post: > - Your full /etc/make.conf > - Your full /etc/src.conf > - Any modifications you made to your source tree > - The specific procedure you use for buildworld > - An url to a full build log (don't post it to the list, because it wil= l > be rather large) > When commenting out the wrapping =2Eif defined(USE_CLANG) =2Eendif construct, as suffested by Olivier, it works. I gues I found my mistake: = From an earlier attempt of building FreeBSD with clang, I placed the=20 WIKI suggestions into /etc/src.conf and I never recalled this. I delete=20 it and try again ... On my lab's box, same OS, same revision, nearly same hardware, building=20 world/kernel worked fine even with the 'switch' - but there wasn't=20 /etc/src.conf. Thanks for the hints. I'll report again. Regards, Oliver