diff options
author | John Criswell <criswell@uiuc.edu> | 2003-11-18 16:05:23 +0000 |
---|---|---|
committer | John Criswell <criswell@uiuc.edu> | 2003-11-18 16:05:23 +0000 |
commit | 6ea30b0af2cc1d955e08bf96ecd09e37c61b601d (patch) | |
tree | 75389908b1678406aaa5b36880cb3d99a81b0705 /docs | |
parent | c8db76c647c93a79f66b094a2db3eaccb14cbae4 (diff) | |
download | external_llvm-6ea30b0af2cc1d955e08bf96ecd09e37c61b601d.zip external_llvm-6ea30b0af2cc1d955e08bf96ecd09e37c61b601d.tar.gz external_llvm-6ea30b0af2cc1d955e08bf96ecd09e37c61b601d.tar.bz2 |
Added information on the GCC front end.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10067 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'docs')
-rw-r--r-- | docs/FAQ.html | 63 |
1 files changed, 63 insertions, 0 deletions
diff --git a/docs/FAQ.html b/docs/FAQ.html index a40b215..e44defb 100644 --- a/docs/FAQ.html +++ b/docs/FAQ.html @@ -306,6 +306,69 @@ build.</p> </div> <!-- *********************************************************************** --> +<div class="doc_section"> + <a name="cfe">GCC Front End</a> +</div> + +<div class="question"> +<p> +When I compile software that uses a configure script, the configure script +thinks my system has all of the header files and libraries it is testing for. +How do I get configure to work correctly? +</p> +</div> + +<div class="answer"> +<p> +The configure script is getting things wrong because the LLVM linker allows +symbols to be undefined at link time (so that they can be resolved during JIT +or translation to the C back end). That is why configure thinks your system +"has everything." +</p> +<p> +To work around this, perform the following steps: +</p> + +<ol> + <li> + Make sure the CC and CXX environment variables contains the full path to the + LLVM GCC front end. + </li> + + <li> + Make sure that the regular C compiler is first in your PATH. + </li> + + <li> + Add the string "-Wl,-native" to your CFLAGS environment variable. + </li> +</ol> + +<p> +This will allow the gccld linker to create a native code executable instead of +a shell script that runs the JIT. Creating native code requires standard +linkage, which in turn will allow the configure script to find out if code is +not linking on your system because the feature isn't available on your system. +</p> +</div> + +<div class="question" +<p> +When I compile code using the LLVM GCC front end, it complains that it cannot +find crtend.o. +</p> +</div> + +<div class="answer" +<p> +In order to find crtend.o, you must have the directory in which it lives in +your LLVM_LIB_SEARCH_PATH environment variable. For the binary distribution of +the LLVM GCC front end, this will be the full path of the bytecode-libs +directory inside of the LLVM GCC distribution. +</p> +</div> +<!-- *********************************************************************** --> +<!-- *********************************************************************** --> <hr> <div class="doc_footer"> |