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

From: O. Hartmann <ohartman_at_mail.zedat.fu-berlin.de>
Date: Tue, 03 May 2011 20:53:29 +0200
On 05/02/11 14:19, Olivier Smedts wrote:
> 2011/5/1 O. Hartmann<ohartman_at_mail.zedat.fu-berlin.de>:
>> Well,
>> I tried the first time building FreeBSD 9.0-CURRENT/amd64 (sources from
>> today's latest svn) and it failed (taken the /etc/make.conf addition from
>> the wiki), giving the below showed error.
>
> Did you follow the instructions on the wiki ? Do you have the
> following lines in your /etc/make.conf ?
> NO_WERROR=
> WERROR=
>
>> Is this a well known issue and FreeBSD isn't building correctly at the
>> moment or did I miss something (not mentioned on the wiki's page)?
>>
>>
>>
>> clang: warning: argument unused during compilation:
>> '-finhibit-size-directive'
>> clang: warning: argument unused during compilation: '-fno-toplevel-reorder'
>> sh /usr/src/tools/install.sh -o root -g wheel -m 444 �crtbegin.o
>> /usr/obj/usr/src/lib32/usr/lib32/crtbegin.o
>> sh /usr/src/tools/install.sh -o root -g wheel -m 444 �crtend.o
>> /usr/obj/usr/src/lib32/usr/lib32/crtend.o
>> sh /usr/src/tools/install.sh -o root -g wheel -m 444 �crtbeginT.o
>> /usr/obj/usr/src/lib32/usr/lib32/crtbeginT.o
>> sh /usr/src/tools/install.sh -o root -g wheel -m 444 �crtbegin.So
>> /usr/obj/usr/src/lib32/usr/lib32/crtbeginS.o
>> sh /usr/src/tools/install.sh -o root -g wheel -m 444 �crtend.So
>> /usr/obj/usr/src/lib32/usr/lib32/crtendS.o
>> ===>  lib/csu/i386-elf (obj,depend,all,install)
>> rm -f .depend
>> CC='clang' mkdep -f .depend -a � �-I/usr/src/lib/csu/i386-elf/../common
>> -I/usr/src/lib/csu/i386-elf/../../libc/include
>> /usr/src/lib/csu/i386-elf/crti.S /usr/src/lib/csu/i386-elf/crtn.S
>> clang -O2 -pipe -I/usr/src/lib/csu/i386-elf/../common
>> -I/usr/src/lib/csu/i386-elf/../../libc/include -std=gnu99 -Wsystem-headers
>> -Wall -Wno-format-y2k -W -Wno-unused-parameter -Wstrict-prototypes
>> -Wmissing-prototypes -Wpointer-arith -Wreturn-type -Wcast-qual
>> -Wwrite-strings -Wswitch -Wshadow -Wunused-parameter -Wcast-align
>> -Wchar-subscripts -Winline -Wnested-externs -Wredundant-decls
>> -Wold-style-definition -Wno-pointer-sign �-c
>> /usr/src/lib/csu/i386-elf/crti.S
>> clang -O2 -pipe -I/usr/src/lib/csu/i386-elf/../common
>> -I/usr/src/lib/csu/i386-elf/../../libc/include -std=gnu99 -Wsystem-headers
>> -Wall -Wno-format-y2k -W -Wno-unused-parameter -Wstrict-prototypes
>> -Wmissing-prototypes -Wpointer-arith -Wreturn-type -Wcast-qual
>> -Wwrite-strings -Wswitch -Wshadow -Wunused-parameter -Wcast-align
>> -Wchar-subscripts -Winline -Wnested-externs -Wredundant-decls
>> -Wold-style-definition -Wno-pointer-sign �-c
>> /usr/src/lib/csu/i386-elf/crtn.S
>> clang -O2 -pipe -I/usr/src/lib/csu/i386-elf/../common
>> -I/usr/src/lib/csu/i386-elf/../../libc/include -std=gnu99 -Wsystem-headers
>> -Wall -Wno-format-y2k -W -Wno-unused-parameter -Wstrict-prototypes
>> -Wmissing-prototypes -Wpointer-arith -Wreturn-type -Wcast-qual
>> -Wwrite-strings -Wswitch -Wshadow -Wunused-parameter -Wcast-align
>> -Wchar-subscripts -Winline -Wnested-externs -Wredundant-decls
>> -Wold-style-definition -Wno-pointer-sign -DGCRT -S -o gcrt1_c.s
>> /usr/src/lib/csu/i386-elf/crt1_c.c
>> sed -i "" -e '/\.note\.ABI-tag/s/progbits/note/' gcrt1_c.s
>> clang -O2 -pipe -I/usr/src/lib/csu/i386-elf/../common
>> -I/usr/src/lib/csu/i386-elf/../../libc/include -std=gnu99 -Wsystem-headers
>> -Wall -Wno-format-y2k -W -Wno-unused-parameter -Wstrict-prototypes
>> -Wmissing-prototypes -Wpointer-arith -Wreturn-type -Wcast-qual
>> -Wwrite-strings -Wswitch -Wshadow -Wunused-parameter -Wcast-align
>> -Wchar-subscripts -Winline -Wnested-externs -Wredundant-decls
>> -Wold-style-definition -Wno-pointer-sign -c -o gcrt1_c.o gcrt1_c.s
>> clang: warning: argument unused during compilation: '-I
>> /usr/src/lib/csu/i386-elf/../common'
>> clang: warning: argument unused during compilation: '-I
>> /usr/src/lib/csu/i386-elf/../../libc/include'
>> clang: warning: argument unused during compilation: '-std=gnu99'
>> clang: warning: argument unused during compilation: '-Wsystem-headers'
>> clang: warning: argument unused during compilation: '-Wall'
>> clang: warning: argument unused during compilation: '-Wno-format-y2k'
>> clang: warning: argument unused during compilation: '-W'
>> clang: warning: argument unused during compilation: '-Wno-unused-parameter'
>> clang: warning: argument unused during compilation: '-Wstrict-prototypes'
>> clang: warning: argument unused during compilation: '-Wmissing-prototypes'
>> clang: warning: argument unused during compilation: '-Wpointer-arith'
>> clang: warning: argument unused during compilation: '-Wreturn-type'
>> clang: warning: argument unused during compilation: '-Wcast-qual'
>> clang: warning: argument unused during compilation: '-Wwrite-strings'
>> clang: warning: argument unused during compilation: '-Wswitch'
>> clang: warning: argument unused during compilation: '-Wshadow'
>> clang: warning: argument unused during compilation: '-Wunused-parameter'
>> clang: warning: argument unused during compilation: '-Wcast-align'
>> clang: warning: argument unused during compilation: '-Wchar-subscripts'
>> clang: warning: argument unused during compilation: '-Winline'
>> clang: warning: argument unused during compilation: '-Wnested-externs'
>> clang: warning: argument unused during compilation: '-Wredundant-decls'
>> clang: warning: argument unused during compilation: '-Wold-style-definition'
>> clang: warning: argument unused during compilation: '-Wno-pointer-sign'
>> clang -O2 -pipe -I/usr/src/lib/csu/i386-elf/../common
>> -I/usr/src/lib/csu/i386-elf/../../libc/include -std=gnu99 -Wsystem-headers
>> -Wall -Wno-format-y2k -W -Wno-unused-parameter -Wstrict-prototypes
>> -Wmissing-prototypes -Wpointer-arith -Wreturn-type -Wcast-qual
>> -Wwrite-strings -Wswitch -Wshadow -Wunused-parameter -Wcast-align
>> -Wchar-subscripts -Winline -Wnested-externs -Wredundant-decls
>> -Wold-style-definition -Wno-pointer-sign �-c
>> /usr/src/lib/csu/i386-elf/crt1_s.S
>> 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
>> *** Error code 1
>>
>> Stop in /usr/src/lib/csu/i386-elf.
>> *** Error code 1
>>
>> Stop in /usr/src.
>> *** Error code 1
>>
>> Stop in /usr/src.
>> *** Error code 1
>>
>> Stop in /usr/src.
>> *** Error code 1


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


I think I should file a PR ...

oliver
Received on Tue May 03 2011 - 16:53:31 UTC

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