Improve docs on LLVM build instruction

This commit is contained in:
Siu Kwan Lam 2013-04-08 11:14:11 -05:00
commit fab52057ba

View file

@ -16,13 +16,18 @@ Other Python versions may work.
Quickstart Quickstart
---------- ----------
1. Get 3.2 version of LLVM, build it. Make sure ``--enable-pic`` is 1. Get and extract LLVM 3.2 source tarball.
passed to LLVM's ``configure``.
For LLVM 3.2, make sure that environment variable ``REQUIRES_RTTI=1`` is 2. Run ``./configure --enable-optimized`` in the extracted directory.
defined when running ``make``. Otherwise, you may see "undefined symbol:
_ZTIN4llvm24PassRegistrationListenerE". Please refer to **Note**: Without the ``--enable-optimized`` flag, debug build will be
http://llvm.org/docs/Packaging.html#c-features for details. selected. Unless you are developing LLVM or llvmpy, it is recommended
that the flag is used to reduce build time and binary size.
3. Run ``REQUIRES_RTTI=1 make`` to build.
**Note**: With LLVM 3.2, the default build configuration has C++ RTTI
disabled. However, llvmpy requires RTTI.
2. Get llvm-py and install it:: 2. Get llvm-py and install it::
@ -37,6 +42,14 @@ Quickstart
3. See documentation at 'http://www.llvmpy.org' and examples 3. See documentation at 'http://www.llvmpy.org' and examples
under 'test'. under 'test'.
Common Build Problems
---------------------
1. If llvmpy cannot be imported due to "undefined symbol:
_ZTIN4llvm24PassRegistrationListenerE", it is because RTTI is not enabled
when building LLVM. "_ZTIN4llvm24PassRegistrationListenerE" is the typeinfo
of PassRegistrationListener class.
LICENSE LICENSE
------- -------