[LLVMdev] Compile a large project with llvm?
Wink zhang
winkqrzhang at gmail.com
Fri Mar 5 07:32:10 PST 2010
Dear John,
Thanks for your reply. I want to do whole program analysis, all what I
need are just the separate .bc files. What instructions should I follow?
I run the configure on apache in this way:
CC=clang CFLAGS=-emit-llvm ./configure
while I get the error message like:
checking for gcc... clang
checking for C compiler default output file name... configure: error: C
compiler cannot create executables
Did I miss something? Thanks.
-Wink
John Criswell wrote:
> Wink zhang wrote:
>> Hi,
>>
>> How to compile a large project (such as Apache) by using llvm-gcc?
>> I tried to replace CC with llvm-gcc and CFLAGS with -emit-llvm while
>> running configure, but it didn't work.
>>
> If you just want to compile the program with llvm-gcc, then Diego's
> instructions are fine.
>
> If, however, you want to do inter-procedural optimization or whole
> program analysis, then there's additional things you need to do.
>
> If you just want to use LLVM's link-time optimizations, you will need
> to use the libLTO library with your linker. Your linker, in turn,
> must be able to support plugins (like the gold linker, for example).
> For directions on how to set up libLTO, see
> http://llvm.org/docs/LinkTimeOptimization.html and
> http://llvm.org/docs/GoldPlugin.html.
>
> If you want to write and use your own link-time passes, then you have
> several options:
>
> 1) Modify the program's Makefiles to use llvm-ld to link bitcode files
> together. This will allow you to generate a single bitcode image.
>
> 2) Modify libLTO to run your analysis and transform passes. If you
> plan to work with several large applications, this is probably the way
> to go. SAFECode has a version of libLTO that does whole-program
> analysis; you can find this tool in the safecode/tools/LTO directory
> in the SAFECode source code (directions for getting SAFECode are at
> http://safecode.cs.illinois.edu/downloads.html). This approach can
> sometimes alleviate the need for changing the Makefiles.
>
> -- John T.
>> Thank you for your help.
>>
>> -Wink
>> _______________________________________________
>> LLVM Developers mailing list
>> LLVMdev at cs.uiuc.edu http://llvm.cs.uiuc.edu
>> http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev
>>
>
>
More information about the llvm-dev
mailing list