From 6ea30b0af2cc1d955e08bf96ecd09e37c61b601d Mon Sep 17 00:00:00 2001
From: John Criswell
Date: Tue, 18 Nov 2003 16:05:23 +0000
Subject: Added information on the GCC front end.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10067 91177308-0d34-0410-b5e6-96231b3b80d8
---
docs/FAQ.html | 63 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
1 file changed, 63 insertions(+)
(limited to 'docs')
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.
+
+
+
+
+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?
+
+
+
+
+
+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."
+
+
+To work around this, perform the following steps:
+
+
+
+ -
+ Make sure the CC and CXX environment variables contains the full path to the
+ LLVM GCC front end.
+
+
+ -
+ Make sure that the regular C compiler is first in your PATH.
+
+
+ -
+ Add the string "-Wl,-native" to your CFLAGS environment variable.
+
+
+
+
+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.
+
+
+
+
+When I compile code using the LLVM GCC front end, it complains that it cannot
+find crtend.o.
+
+
+
+
+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.
+
+
+
+