I am trying to cross compile with clang and run Undefined Behavior Sanitizer for .c file
Command I am running
clang -target sparc -integrated-as -fuse-ld=lld -fsanitize=undefined test1.c
clang is the cross compiler
sparc is the target architecture.
-integrated-as to use the llvm assembler
-fuse-ld=lld to use lld linker
-fsanitize=undefined to run UBSan
Error
ld.lld: error: /tmp/test1-43c7c0.o is incompatible with elf64-x86-64
collect2: error: ld returned 1 exit status
clang-11: error: linker (via gcc) command failed with exit code 1 (use -v to see invocation)
My system
Ubuntu 18.04
x86_64
command executed on ubuntu terminal
without -target sparc on a file.c which does not contain sparc assembly the clang works fine