[Bug 18957] New: python site-packages is installed into "lib64" (not "lib") on RedHat 64-bit linux.

Bug ID 18957
Summary python site-packages is installed into “lib64” (not “lib”) on RedHat 64-bit linux.
Product lldb
Version 3.4
Hardware PC
OS Linux
Status NEW
Severity enhancement
Priority P
Component All Bugs
Assignee lldb-dev@cs.uiuc.edu
Reporter triple.yang@gmail.com
Classification Unclassified

There is incompatibility about python site-packages on my 64-bit RedHat
Enterprise Linux 6.3, so lldb can not run "script" command properly because it
can not search python libraries.

Problem 1: $(framework_python_dir) is evaluated as
"....../lib64/python2.6/site-packages" in shell script
"finish-swig-Python-LLDB.sh" and later a soft link named "_lldb.so" pointing to
../../../liblldb.so is created. Since lldb puts liblldb.so into "lib", this
soft link is broken. The correct soft link might be
"../../../../lib/liblldb.so".

Problem 2: lldb always install python into system path
/usr/lib64/python2.6/site-packages. If we do not has the authority, installment
will fail.

Problem 3 (possible): Assume we change finish-swig-Python-LLDB.sh to install
python2.6/site-packages into $(LLVM_Install_Path)/lib64 (which is natual in
finish-swig-Python-LLDB.sh), lldb still can not find python dependencies since
Host::GetLLDBPath() in lldb/source/Host/common/Host.cpp detects
g_lldb_python_dir at "....../lib/python". I believe current implementation does
not distinguish 64-bit and 32-bit linux OSes.

In a word, since python is defaulted to be installed at "/usr/lib64/......"
instead of "/usr/lib/......" on my 64-bit RHEL, lldb can not run "script".