zhunan <firstname.lastname@example.org> writes:
Recently I met a question when I want to replace gcc with llvm-gcc
through configure script(command).
For simply,described like that
I typed as following
1.zhunan@sjtu:~/workplace/$ ./configure CC=llvm-gcc CFLAGS="-S
configure will failed when it checks whether C compiler is working
2.zhunan@sjtu:~/workplace/$ ./configure CC=llvm-gcc CFLAGS="-c
configure will failed when it checks the default output filename,just
means the C compiler cannot create executables.
I would like to know what's the matter with this replacing attempt?and
any possibility to overcome the trouble?
Your CFLAGS is telling llvm-gcc that it must not produce an object code
file nor an executable file, but something else (llvm assembler on your
first attempt and llvm bitcode on your second attempt).
`configure' needs a fully working compiler toolset, which means that the
compiler must be able to produce executable files. Your CFLAGS setting
is preventing this.
Execute `configure' with just CC=llvm-gcc and then try
if you want LLVM bitcode or
make CFLAGS="-S -emit-llvm"
if you want LLVM assembler.
`make' will fail at the linking phase, but you will have a set of LLVM
bitcode/assembler files for each of your C source files.
If you simply want to replace gcc with llvm-gcc for building your
software, forget about CFLAGS and just do
./configure CC=llvm-gcc && make