[LLVMdev] Using non-system compiler to build llvm and llvm-gcc front end

Scott Ricketts sricketts at maxentric.com
Mon May 4 10:39:40 PDT 2009


I am still having problems getting everything installed. I realized that the
successful build of llvm-2.5 had in fact been configured to use the system
gcc (4.1.2). However, I was unable to sucessfully build llvm-gcc with gcc
4.1.2.

I went back and attempted to build llvm-2.5 with gcc-4.2.4 (installed in a
separate directory from system gcc). However, I got the same build error as
before.

Then I went back again to attempt to build llvm-2.5 with the system gcc, and
was unable to reproduce a successful build. So something is wrong with my
recollection of history.

I think I am just configuring incorrectly. I would like to use the
installation of gcc-4.2.4, which is located in /pkg/bin/gcc-4.2.4. Perhaps
someone has done something similar and can provide me a working example?

Details:

*** llvm-2.5 configured to use gcc-4.2.4:

$ ../llvm-2.5/configure --prefix=/pkg/bin/llvm/
CC=/pkg/bin/gcc-4.2.4/bin/gcc CXX=/pkg/bin/gcc-4.2.4/bin/g++
CXXCPP=/pkg/bin/gcc-4.2.4/bin/cpp LDFLAGS=-L/pkg/bin/gcc-4.2.4/lib64/
CXXFLAGS=-I/pkg/bin/gcc-4.2.4/include/c++/4.2.4/
CPPFLAGS=-I/pkg/bin/gcc-4.2.4/include/

llvm-2.5 build:

$ make tools-only

error:

make[1]: Entering directory `/pkg/build/llvm/llvm-obj/lib/VMCore'
llvm[1]: Building Intrinsics.gen.tmp from Intrinsics.td
/pkg/build/llvm/llvm-obj/Release/bin/tblgen: /usr/lib64/libstdc++.so.6:
version `GLIBCXX_3.4.9' not found (required by
/pkg/build/llvm/llvm-obj/Release/bin/tblgen)
make[1]: ***
[/pkg/build/llvm/llvm-obj/lib/VMCore/Release/Intrinsics.gen.tmp] Error 1
make[1]: Leaving directory `/pkg/build/llvm/llvm-obj/lib/VMCore'
make: *** [all] Error 1


*** llvm-2.5 configured to use default gcc (4.1.2):

$ ../llvm-2.5/configure --prefix=/pkg/bin/llvm/

llvm-2.5 build:

$ make tools-only

error (something like):

X86ISelDAGToDAG.cpp internal compiler error: Segmentation fault

On Fri, May 1, 2009 at 6:20 PM, Scott Ricketts <sricketts at maxentric.com>wrote:

> Ah, nevermind... just needed to make clean to clear out some of the junk I
> compiled with gcc-4.1.2. The build completed without error.
>
>
> On Fri, May 1, 2009 at 2:14 PM, Scott Ricketts <sricketts at maxentric.com>wrote:
>
>> I am attempting to install llvm on CentOS 5.3, which uses gcc-4.1.2 as its
>> system compiler. Since this compiler has reported to behave poorly with
>> llvm, I built gcc-4.2.4 in an insulated directory for use with my llvm
>> installation.
>>
>> However, I am not sure I am configuring properly. The gcc-4.2.4
>> installation is in /pkg/bin/gcc-4.2.4. Here is my config line:
>>
>> ../llvm-2.5/configure --prefix=/pkg/bin/llvm/
>> CC=/pkg/bin/gcc-4.2.4/bin/gcc CXX=/pkg/bin/gcc-4.2.4/bin/g++
>> CXXCPP=/pkg/bin/gcc-4.2.4/bin/cpp LDFLAGS=-L /pkg/bin/gcc-4.2.4/lib64/
>> CXXFLAGS=-I/pkg/bin/gcc-4.2.4/include/c++/4.2.4/
>> CPPFLAGS=-I/pkg/bin/gcc-4.2.4/include/
>>
>> I am trying to specify all the appropriate environment variables for using
>> the non-default gcc. However, it is likely that I have made an error or are
>> ommitting some important variable(s).
>>
>> Then I do "gmake tools-only" (because I have yet to build the llvm-gcc
>> front end). Here is the error:
>>
>> gmake[1]: Entering directory `/pkg/build/llvm/llvm-obj/lib/VMCore'
>> llvm[1]: Building Intrinsics.gen.tmp from Intrinsics.td
>> /pkg/build/llvm/llvm-obj/Release/bin/tblgen: /usr/lib64/libstdc++.so.6:
>> version `GLIBCXX_3.4.9' not found (required by
>> /pkg/build/llvm/llvm-obj/Release/bin/tblgen)
>> gmake[1]: ***
>> [/pkg/build/llvm/llvm-obj/lib/VMCore/Release/Intrinsics.gen.tmp] Error 1
>> gmake[1]: Leaving directory `/pkg/build/llvm/llvm-obj/lib/VMCore'
>> gmake: *** [all] Error 1
>>
>>
>> So it is looking in /usr/lib64/ for libstdc++.so.6, when in fact I want it
>> to look in /pkg//bin/gcc-4.2.4/lib64/ (which I thought I had specified with
>> the configuration).
>>
>> Any help would be appreciated.
>>
>> Thanks,
>> Scott
>>
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20090504/f04486a6/attachment.html>


More information about the llvm-dev mailing list