[LLVMbugs] [Bug 14530] New: Attempt to use 'configure --libdir' to use $prefix/lib64 was ignored.
bugzilla-daemon at llvm.org
bugzilla-daemon at llvm.org
Thu Dec 6 13:52:16 PST 2012
http://llvm.org/bugs/show_bug.cgi?id=14530
Bug #: 14530
Summary: Attempt to use 'configure --libdir' to use
$prefix/lib64 was ignored.
Product: Build scripts
Version: trunk
Platform: PC
OS/Version: Linux
Status: NEW
Severity: normal
Priority: P
Component: Makefiles
AssignedTo: unassignedbugs at nondot.org
ReportedBy: peeter.joot at gmail.com
CC: llvmbugs at cs.uiuc.edu
Classification: Unclassified
I've configured with --prefix=$HOME/clang/optimized
--libdir=$HOME/clang/optimized/lib64 but the libdir was ignored.
Despite this use of configure --libdir, after 'make install' I see the clang
runtime libraries in $prefix/lib/ (where $prefix is the path specified in
--prefix=...). Generating a list of the files before and after make install of
clang, here's where the shared libs where installed:
grep -F .so d | xargs file
optimized/lib/LLVMHello.so: ELF 64-bit LSB shared object, x86-64, version
1 (SYSV), dynamically linked, not stripped
optimized/lib/libLTO.so: ELF 64-bit LSB shared object, x86-64, version
1 (SYSV), dynamically linked, not stripped
optimized/lib/BugpointPasses.so: ELF 64-bit LSB shared object, x86-64, version
1 (SYSV), dynamically linked, not stripped
optimized/lib/libclang.so: ELF 64-bit LSB shared object, x86-64, version
1 (SYSV), dynamically linked, not stripped
optimized/lib/libprofile_rt.so: ELF 64-bit LSB shared object, x86-64, version
1 (SYSV), dynamically linked, not stripped
See that none of these shared libs went into the configured $prefix/lib64 path.
For reference, note that the full set of config options used was:
../llvm/configure --prefix=/home/peeterj/clang/optimized --enable-optimized
--libdir=lib64 --with-gcc-toolchain=/home/peeterj/clang/optimized
--with-extra-ld-options=-Wl,-R,/home/peeterj/clang/optimized/lib64
The use of --libdir=$prefix/lib64 was used because I'd installed gcc to that
same path, and wanted both the clang and gcc runtime libraries in the same
place so that I only have to specify one set of -Wl,-rpath,... flags when I use
this compiler. The reason for this sort of build complexity is because the
default system compiler on this machine doesn't appear to build clang (
http://llvm.org/bugs/show_bug.cgi?id=14527 )
I'd also argue that lib64 ought to be the default linux libdir when the version
of clang that is being built targets x64 (or any other 64-bit linux platform
where compilers can target either 32-bit or 64-bit object models). i.e. having
to specify libdir at all to get the clang runtime libs into $prefix/lib64 also
seems like a bug to me.
svn version in question was from the trunk, obtained fairly recently:
$ cat svn.revision
Path: .
Working Copy Root Path: /vbs/bldsupp.linux1/linuxamd64/clang/llvm
URL: http://llvm.org/svn/llvm-project/llvm/trunk
Repository Root: http://llvm.org/svn/llvm-project
Repository UUID: 91177308-0d34-0410-b5e6-96231b3b80d8
Revision: 169002
Node Kind: directory
Schedule: normal
Last Changed Author: eliben
Last Changed Rev: 169002
Last Changed Date: 2012-11-30 09:22:14 -0500 (Fri, 30 Nov 2012)
--
Configure bugmail: http://llvm.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.
More information about the llvm-bugs
mailing list