Re: Compiling BETA2 with clang fails

From: Volodymyr Kostyrko <c.kworr_at_gmail.com>
Date: Fri, 09 Sep 2011 15:39:10 +0300
09.09.2011 11:52, Dimitry Andric wrote:
> I did a few test builds with 'high' CPU values for -march, and I ran
> into various problems. I'd discourage the use of -march=native for now,
> at least with clang. It will take some time to investigate.

Hey, I already posted results of build without -march at all.

> ...
>> # nm -D /usr/obj/usr/src/tmp/usr/lib/libc.so
> ...
>> That's the problem - libraries miss most symbols.
>
> This is why I still think you have the stdin/out/err problem, in some
> way. Can you please check /usr/obj/usr/src/lib/libc/Version.map? It
> should have about 2775 lines, otherwise your libc build is busted.

This build was without ccache and CPUTYPE or march. Busted:

=== Version.map ===
FBSD_1.0 {
};

FBSD_1.1 {
} FBSD_1.0;

FBSD_1.2 {
} FBSD_1.1;

FBSDprivate_1.0 {
local:
         *;
} FBSD_1.2;

=== Version.map ===

Smoking logs gives this:

cat /usr/src/lib/libc/i386/Symbol.map /usr/src/lib/libc/db/Symbol.map 
/usr/src/lib/libc/compat-43/Symbol.map 
/usr/src/lib/libc/gdtoa/Symbol.map /usr/src/lib/libc/gen/Symbol.map 
/usr/src/lib/libc/gmon/Symbol.map /usr/src/lib/libc/inet/Symbol.map 
/usr/src/lib/libc/locale/Symbol.map /usr/src/lib/libc/nameser/Symbol.map 
/usr/src/lib/libc/net/Symbol.map /usr/src/lib/libc/nls/Symbol.map 
/usr/src/lib/libc/posix1e/Symbol.map /usr/src/lib/libc/quad/Symbol.map 
/usr/src/lib/libc/regex/Symbol.map /usr/src/lib/libc/resolv/Symbol.map 
/usr/src/lib/libc/stdio/Symbol.map /usr/src/lib/libc/stdlib/Symbol.map 
/usr/src/lib/libc/stdtime/Symbol.map /usr/src/lib/libc/string/Symbol.map 
/usr/src/lib/libc/sys/Symbol.map /usr/src/lib/libc/rpc/Symbol.map 
/usr/src/lib/libc/uuid/Symbol.map /usr/src/lib/libc/xdr/Symbol.map 
/usr/src/lib/libc/yp/Symbol.map | clang++ - -  | awk -v 
vfile=/usr/src/lib/libc/Versions.def -f 
/usr/src/share/mk/version_gen.awk > Version.map
clang++: error: -E or -x required when input is from standard input
clang++: error: -E or -x required when input is from standard input

And this is purely my fault because I incorrectly redefined CPP.

Great thanks to everyone. I'll try to remember what I have learned this 
week.

-- 
Sphinx of black quartz judge my vow.
Received on Fri Sep 09 2011 - 10:39:19 UTC

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