Re: Building FreeBSD 9.0-CUR/amd64 with CLANG fails

From: Dimitry Andric <dim_at_FreeBSD.org>
Date: Wed, 04 May 2011 09:00:29 +0200
On 2011-05-03 20:53, O. Hartmann wrote:
...
>>> ld -m elf_i386_fbsd -Y P,/usr/obj/usr/src/lib32/usr/lib32 �-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.
> Same error.
>
> This is the addendum I made to the /etc/make.conf:
>
> ##
> ##      CLANG
> ##
> .if defined(USE_CLANG)
> .if !defined(CC) || ${CC} == "cc"
> CC=clang
> .endif
> .if !defined(CXX) || ${CXX} == "c++"
> CXX=clang++
> .endif
> # Don't die on warnings
> NO_WERROR=
> WERROR=
> # Don't forget this when using Jails!
> NO_FSCHG=
> .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 will
   be rather large)
Received on Wed May 04 2011 - 05:00:26 UTC

This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:40:13 UTC