[LLVMdev] how to change a compiler from a host to a target in Clang's assembler and linker (original) (raw)

Hatanaka, Akira ahatanaka at mips.com
Fri Jul 6 10:08:39 PDT 2012


I think it is a driver issue too. The files should be in clang/lib/driver, but I am not very familiar with the code in the files. Perhaps Simon can answer your questions.

llvm's test suite is run against clang/llvm nightly with direct object emission, so I believe clang's integrated assembler should work fine.

$ clang foo.c -c -O3 -integrated-as -target mipsel-unknown-linux -ccc-clang-archs mipsel


From: NAKAMURA Takumi [geek4civic at gmail.com] Sent: Friday, July 06, 2012 8:12 AM To: noriko-e at fc.ritsumei.ac.jp Cc: llvmdev; cfe-dev; Hatanaka, Akira; Kotler, Reed Subject: Re: [LLVMdev] how to change a compiler from a host to a target in Clang's assembler and linker

Konbanwa, Etani san,

It might be clang driver issue. Move to cfe-dev.

2012/7/4 ETANI NORIKO <noriko-e at fc.ritsumei.ac.jp>:

I would like to ask you how to use Clang in cross-compile environment. My environment is as follows: ------ HOST: 32-bit Fedora 16 with Intel Core i7 gcc/g++ compiler available TARGET: 32-bit mips-typed linux gnu gcc/g++ for 32-bit mips-typed linux available ------

As Clang's option is "-c" in use, my programs are compiled and linked under a host machine's environment (in my case, 32-bit Fedora 16 is a host OS with Intel Core i7).

In order to compile and link them under a target's environment (in my case, mips-typed linux gcc/g++ can work), in Clang’s "Assembler" and "Linker" processes, a compiler on a host should be changed to one on a target. Still now, I cannot find out a file to set a compiler for "Assembler" and "Linker" in Clang. Please advise me how to change a compiler from a host one to a target one.

To Mips guys: Do you think Mips MC assembler would work?

FYI, workaround. clang -S hogehoge.c target-gcc -c hogehoge.s target-gcc -o fugafuga hogehoge.o ... (I don't know how mips-clang would be mature)

...Takumi (中村)



More information about the llvm-dev mailing list