[LLVMdev] Build problem with nonstandard lib directory

Andy Jost Andrew.Jost at synopsys.com
Mon Jul 1 16:28:19 PDT 2013


I eventually found a solution to this problem, which I'll post here in case anyone ever has the same trouble.

The solution was to add the -rpath linker option as follows:

../src/llvm-3.3/configure --enable-doxygen --enable-jit --prefix=`pwd` LDFLAGS=-Wl,-rpath=/depot/gcc-4.5.2/lib64

I got the idea from http://stackoverflow.com/questions/1952146/glibcxx-3-4-9-not-found

-Andy

From: Andy Jost
Sent: Monday, July 01, 2013 3:51 PM
To: 'Hinton, Don'; 'Andy Jost'; LLVMdev at cs.uiuc.edu
Subject: RE: Build problem with nonstandard lib directory

Thanks, Don.  This change had no effect.  Anything else I could try?

   174  15:47   mkdir build
   175  15:47   cd build/
   176  15:47   ../src/llvm-3.3/configure --enable-doxygen --enable-jit --prefix=`pwd` --with-gcc-toolchain=/depot/gcc-4.5.2/
   177  15:49   gmake -j12

From: Hinton, Don [mailto:Don.Hinton at pimco.com]<mailto:[mailto:Don.Hinton at pimco.com]>
Sent: Monday, July 01, 2013 12:22 PM
To: 'Andy Jost'; LLVMdev at cs.uiuc.edu<mailto:LLVMdev at cs.uiuc.edu>
Subject: RE: Build problem with nonstandard lib directory

Hi Andy:

Please add this to your configure invocation:

  --with-gcc-toolchain=/depot/gcc-4.5.2

hth...
don

From: llvmdev-bounces at cs.uiuc.edu<mailto:llvmdev-bounces at cs.uiuc.edu> [mailto:llvmdev-bounces at cs.uiuc.edu]<mailto:[mailto:llvmdev-bounces at cs.uiuc.edu]> On Behalf Of Andy Jost
Sent: Sunday, June 30, 2013 6:12 PM
To: LLVMdev at cs.uiuc.edu<mailto:LLVMdev at cs.uiuc.edu>
Subject: [LLVMdev] Build problem with nonstandard lib directory

I'm having trouble building LLVM 3.3 on RHEL 2.6.9-89.ELlargesmp x86_64.  This is most likely a problem with my not knowing the advanced usage of the configure script, but I'm stuck just the same.  I hope this list is an appropriate place for this question.

The system I'm working on is a bit unusual.  It is a shared server not administered by me (I can't change the configuration), and the "normal" system directories like /usr/include, /usr/lib and so on contain mostly very old and outdated things.  For instance, /usr/bin/g++ is gcc version 3.4.6.  I access newer versions though a non-standard directory, e.g.,  /depot/gcc-4.5.2/bin/g++ is gcc version 4.5.2 (the version I want to use).

I've checked out the LLVM 3.3 code, and I try to configure and build it like this:

../src/llvm-3.3/configure --enable-doxygen --enable-jit --prefix=`pwd`/bin
gmake -j12

After several step succeed, I eventually get the following error:

<clip>/build/Debug+Asserts/bin/llvm-tblgen: /usr/lib64/libstdc++.so.6: version `GLIBCXX_3.4.5' not found (required by <clip>/build/Debug+Asserts/bin/llvm-tblgen)

I know this error.  It occurs when the default /usr/lib64 path is used for dynamic loading instead of the non-standard /depot/gcc-4.5.2/lib64.  Normally, I need to set LD_LIBRARY_PATH on this system.  I confirmed that with LD_LIBRARY_PATH set, I can invoke llvm-tblgen, and the without that variable set, I get exactly the error shown.  Also, LD_LIBRARY_PATH is correctly set when configure is called, and when gmake is called.

So how can I adjust the build process?  I suspect there is an option I can pass to configure, but I haven't been able to figure out what it would be.  For example, I tried adding LD_LIBRARY_PATH=$LD_LIBRARY_PATH to the configure command line to no avail.

Any help would be greatly appreciated!

-Andy

This message contains confidential information and is intended only for the individual named. If you are not the named addressee, you should not disseminate, distribute, alter or copy this e-mail. Please notify the sender immediately by e-mail if you have received this e-mail by mistake and delete this e-mail from your system. E-mail transmissions cannot be guaranteed to be secure or without error as information could be intercepted, corrupted, lost, destroyed, arrive late or incomplete, or contain viruses. The sender, therefore, does not accept liability for any errors or omissions in the contents of this message which arise during or as a result of e-mail transmission. If verification is required, please request a hard-copy version. This message is provided for information purposes and should not be construed as a solicitation or offer to buy or sell any securities or related financial instruments in any jurisdiction.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20130701/b0045e83/attachment.html>


More information about the llvm-dev mailing list