Hi,
I tried to run the SPEC benchmark suite SPECCPU 2006 with llvm and clang 2.8. When building the perlbench sources I get these errors (see below) for all the source files. I used a config file (llvm.cfg) where I specify clang as the compiler. I verified the same sources with llvm-gcc and it works fine. Also, I verified the sjeng benchmark from the same suite and it builds and executes correctly with both front-ends.
I have run these SPEC benches with llvm 2.7 using clang without any problems, but in 2.8 I get these errors. I have tested it both with the llvm 2.8 release version and with the svn version, all of them compiled from sources. I tried recompiling clang and llvm to make sure they were not mis-compiled, but it is all the same.
I have a copy of llvm 2.7 on my machine, but I specify the path to the 2.8 executables in my scripts and config files.
Are there any conflicts between different versions, or is it possible to be a bug in clang?
Thank you,
Alexandra
And here is the error:
Hostname.o: In function gnu_dev_major': Hostname.c:(.text+0x0): multiple definition of
gnu_dev_major’
av.o:av.c:(.text+0x0): first defined here
Hostname.o: In function gnu_dev_minor': Hostname.c:(.text+0x20): multiple definition of
gnu_dev_minor’
av.o:av.c:(.text+0x20): first defined here
Hostname.o: In function gnu_dev_makedev': Hostname.c:(.text+0x40): multiple definition of
gnu_dev_makedev’
av.o:av.c:(.text+0x40): first defined here
Hostname.o: In function tolower': Hostname.c:(.text+0x80): multiple definition of
tolower’
av.o:av.c:(.text+0x80): first defined here
Hostname.o: In function toupper': Hostname.c:(.text+0xb0): multiple definition of
toupper’
av.o:av.c:(.text+0xb0): first defined here
Hostname.o: In function atof': Hostname.c:(.text+0xe0): multiple definition of
atof’
av.o:av.c:(.text+0xe0): first defined here
Hostname.o: In function atoi': Hostname.c:(.text+0xf0): multiple definition of
atoi’
av.o:av.c:(.text+0xf0): first defined here
Hostname.o: In function atol': Hostname.c:(.text+0x110): multiple definition of
atol’
av.o:av.c:(.text+0x110): first defined here
Hostname.o: In function atoll': Hostname.c:(.text+0x130): multiple definition of
atoll’
av.o:av.c:(.text+0x130): first defined here
Hostname.o: In function __strcspn_c1': Hostname.c:(.text+0x150): multiple definition of
__strcspn_c1’
av.o:av.c:(.text+0x150): first defined here
Hostname.o: In function __strcspn_c2': Hostname.c:(.text+0x180): multiple definition of
__strcspn_c2’
av.o:av.c:(.text+0x180): first defined here
Hostname.o: In function __strcspn_c3': Hostname.c:(.text+0x1b0): multiple definition of
__strcspn_c3’
av.o:av.c:(.text+0x1b0): first defined here
Hostname.o: In function __strspn_c1': Hostname.c:(.text+0x1e0): multiple definition of
__strspn_c1’
av.o:av.c:(.text+0x1e0): first defined here
Hostname.o: In function __strspn_c2': Hostname.c:(.text+0x200): multiple definition of
__strspn_c2’
av.o:av.c:(.text+0x200): first defined here
Hostname.o: In function __strspn_c3': Hostname.c:(.text+0x230): multiple definition of
__strspn_c3’
av.o:av.c:(.text+0x230): first defined here
Hostname.o: In function __strpbrk_c2': Hostname.c:(.text+0x260): multiple definition of
__strpbrk_c2’
av.o:av.c:(.text+0x260): first defined here
Hostname.o: In function __strpbrk_c3': Hostname.c:(.text+0x290): multiple definition of
__strpbrk_c3’
av.o:av.c:(.text+0x290): first defined here
Hostname.o: In function __strtok_r_1c': Hostname.c:(.text+0x2d0): multiple definition of
__strtok_r_1c’
av.o:av.c:(.text+0x2d0): first defined here
Hostname.o: In function __strsep_1c': Hostname.c:(.text+0x320): multiple definition of
__strsep_1c’
av.o:av.c:(.text+0x320): first defined here
Hostname.o: In function __strsep_2c': Hostname.c:(.text+0x360): multiple definition of
__strsep_2c’
av.o:av.c:(.text+0x360): first defined here
Hostname.o: In function __strsep_3c': Hostname.c:(.text+0x3b0): multiple definition of
__strsep_3c’
av.o:av.c:(.text+0x3b0): first defined here
Hostname.o: In function __cmsg_nxthdr': Hostname.c:(.text+0x400): multiple definition of
__cmsg_nxthdr’
av.o:av.c:(.text+0x400): first defined here
Hostname.o: In function stat': Hostname.c:(.text+0x450): multiple definition of
stat’
av.o:av.c:(.text+0x450): first defined here
Hostname.o: In function lstat': Hostname.c:(.text+0x470): multiple definition of
lstat’
av.o:av.c:(.text+0x470): first defined here
Hostname.o: In function fstat': Hostname.c:(.text+0x490): multiple definition of
fstat’
av.o:av.c:(.text+0x490): first defined here
Hostname.o: In function fstatat': Hostname.c:(.text+0x4b0): multiple definition of
fstatat’
av.o:av.c:(.text+0x4b0): first defined here
Hostname.o: In function mknod': Hostname.c:(.text+0x4d0): multiple definition of
mknod’
av.o:av.c:(.text+0x4d0): first defined here
Hostname.o: In function mknodat': Hostname.c:(.text+0x500): multiple definition of
mknodat’
av.o:av.c:(.text+0x500): first defined here
Hostname.o: In function strtoimax': Hostname.c:(.text+0x530): multiple definition of
strtoimax’
av.o:av.c:(.text+0x530): first defined here
Hostname.o: In function strtoumax': Hostname.c:(.text+0x540): multiple definition of
strtoumax’
av.o:av.c:(.text+0x540): first defined here
Hostname.o: In function wcstoimax': Hostname.c:(.text+0x550): multiple definition of
wcstoimax’
av.o:av.c:(.text+0x550): first defined here
Hostname.o: In function wcstoumax': Hostname.c:(.text+0x560): multiple definition of
wcstoumax’
av.o:av.c:(.text+0x560): first defined here
Hostname.o: In function vprintf': Hostname.c:(.text+0x570): multiple definition of
vprintf’
av.o:av.c:(.text+0x570): first defined here
Hostname.o: In function getchar': Hostname.c:(.text+0x590): multiple definition of
getchar’
av.o:av.c:(.text+0x590): first defined here
Hostname.o: In function fgetc_unlocked': Hostname.c:(.text+0x5b0): multiple definition of
fgetc_unlocked’
av.o:av.c:(.text+0x5b0): first defined here
Hostname.o: In function getc_unlocked': Hostname.c:(.text+0x5e0): multiple definition of
getc_unlocked’
av.o:av.c:(.text+0x5e0): first defined here
Hostname.o: In function getchar_unlocked': Hostname.c:(.text+0x610): multiple definition of
getchar_unlocked’
av.o:av.c:(.text+0x610): first defined here
Hostname.o: In function putchar': Hostname.c:(.text+0x640): multiple definition of
putchar’
av.o:av.c:(.text+0x640): first defined here
Hostname.o: In function fputc_unlocked': Hostname.c:(.text+0x660): multiple definition of
fputc_unlocked’
av.o:av.c:(.text+0x660): first defined here
Hostname.o: In function putc_unlocked': Hostname.c:(.text+0x690): multiple definition of
putc_unlocked’
av.o:av.c:(.text+0x690): first defined here
Hostname.o: In function putchar_unlocked': Hostname.c:(.text+0x6c0): multiple definition of
putchar_unlocked’
av.o:av.c:(.text+0x6c0): first defined here
Hostname.o: In function feof_unlocked': Hostname.c:(.text+0x700): multiple definition of
feof_unlocked’
av.o:av.c:(.text+0x700): first defined here
Hostname.o: In function ferror_unlocked': Hostname.c:(.text+0x710): multiple definition of
ferror_unlocked’
av.o:av.c:(.text+0x710): first defined here
Hostname.o: In function __signbitf': Hostname.c:(.text+0x720): multiple definition of
__signbitf’
av.o:av.c:(.text+0x720): first defined here
Hostname.o: In function __signbit': Hostname.c:(.text+0x730): multiple definition of
__signbit’
av.o:av.c:(.text+0x730): first defined here
Hostname.o: In function __signbitl': Hostname.c:(.text+0x740): multiple definition of
__signbitl’
av.o:av.c:(.text+0x740): first defined here