Bug#821022: python-lldb-3.8: Broken symlinks _lldb.so and libLLVM-3.8.0.so.1

Pablo Oliveira pablo.oliveira at uvsq.fr
Sat May 7 14:05:56 UTC 2016


Hi,

On Sun, 24 Apr 2016 16:40:39 +0200 Sylvestre Ledru
<sylvestre at debian.org> wrote:
> Le 24/04/2016 à 10:08, Graham Inggs a écrit :
> > Confirming.  Python-lldb-3.8 has missing dependencies and some
broken symlinks.
> >
> > After installing python-lldb-3.8, I needed to take the steps below (as
> > root) before I could 'import lldb' successfully.
> >
> > apt-get install lldb-3.8 liblldb-3.8 liblldb-3.8-dev
> >
> > cd /usr/lib/llvm-3.8/lib/python2.7/site-packages/lldb
> > rm libLLVM-3.8.0.so.1
> > ln -s ../../../../../x86_64-linux-gnu/libLLVM-3.8.0.so.1
libLLVM-3.8.0.so.1
> > rm libLLVM-3.8.so.1
> > ln -s ../../../../../x86_64-linux-gnu/libLLVM-3.8.0.so.1
libLLVM-3.8.so.1
> > rm _lldb.so
> > ln -s ../../../../../x86_64-linux-gnu/liblldb-3.8.so _lldb.so
/pkg-llvm-team
>
> yes, this is fine. A patch would be appreciated as I don't have the
> bandwidth for the next two weeks.


Attached is a tentative patch fixing the symlinks and adding the missing
dependencies. I'm testing a full clean rebuild with it and will report back.

This patch does not fix the problem in #813798 (lldb testsuite failing
due to invalid _lldb.so symlink), which happens because lldb's
finishSwigPythonLLDB.py does not know about the SOEXT we are adding. I'm
working on that.

Regards,

Pablo
-------------- next part --------------
Index: control
===================================================================
--- control	(revision 1915)
+++ control	(working copy)
@@ -395,7 +395,7 @@
 Package: python-lldb-3.8
 Section: python
 Architecture: any
-Depends: ${shlibs:Depends}, ${misc:Depends}, python
+Depends: ${shlibs:Depends}, ${misc:Depends}, liblldb-3.8, lldb-3.8, python
 Conflicts: python-lldb-3.4, python-lldb-3.5, python-lldb-3.6, python-lldb-3.7
 Pre-Depends: ${misc:Pre-Depends}
 Description: Next generation, high-performance debugger, python lib
Index: liblldb-X.Y.links.in
===================================================================
--- liblldb-X.Y.links.in	(revision 1915)
+++ liblldb-X.Y.links.in	(working copy)
@@ -1,4 +1,3 @@
 usr/lib/@DEB_HOST_MULTIARCH@/liblldb- at LLVM_VERSION@.so.1       usr/lib/@DEB_HOST_MULTIARCH@/liblldb- at LLVM_VERSION@.so
-usr/lib/@DEB_HOST_MULTIARCH@/liblldb- at LLVM_VERSION@.so         usr/lib/python2.7/dist-packages/lldb- at LLVM_VERSION@/_lldb.so
 usr/lib/@DEB_HOST_MULTIARCH@/liblldb- at LLVM_VERSION@.so.1       usr/lib/llvm- at LLVM_VERSION@/lib/liblldb.so.1
 
Index: python-lldb-X.Y.links.in
===================================================================
--- python-lldb-X.Y.links.in	(revision 1915)
+++ python-lldb-X.Y.links.in	(working copy)
@@ -1,5 +1,6 @@
-usr/lib/@DEB_HOST_MULTIARCH@/libLLVM- at LLVM_VERSION_FULL@.so.1  usr/lib/python2.7/dist-packages/lldb/libLLVM- at LLVM_VERSION_FULL@.so.1
-usr/lib/@DEB_HOST_MULTIARCH@/libLLVM- at LLVM_VERSION_FULL@.so.1  usr/lib/python2.7/dist-packages/lldb/libLLVM- at LLVM_VERSION@.so.1
+usr/lib/@DEB_HOST_MULTIARCH@/libLLVM- at LLVM_VERSION_FULL@.so.1 usr/lib/llvm- at LLVM_VERSION@/lib/python2.7/site-packages/lldb/libLLVM- at LLVM_VERSION_FULL@.so.1
+usr/lib/@DEB_HOST_MULTIARCH@/libLLVM- at LLVM_VERSION_FULL@.so.1 usr/lib/llvm- at LLVM_VERSION@/lib/python2.7/site-packages/lldb/libLLVM- at LLVM_VERSION@.so.1
+usr/lib/@DEB_HOST_MULTIARCH@/liblldb- at LLVM_VERSION@.so.1      usr/lib/llvm- at LLVM_VERSION@/lib/python2.7/site-packages/lldb/_lldb.so
 usr/lib/llvm- at LLVM_VERSION@/lib/python2.7/site-packages/lldb/ usr/lib/python2.7/dist-packages/lldb
 
 
Index: rules
===================================================================
--- rules	(revision 1915)
+++ rules	(working copy)
@@ -412,7 +412,7 @@
 	sed -i 's|LLVM_CMAKE_DIR "/usr/lib/llvm-$(LLVM_VERSION)/share/llvm/cmake"|LLVM_CMAKE_DIR "/usr/share/llvm-$(LLVM_VERSION)/cmake"|' $(DEB_INST)/usr/lib/llvm-$(LLVM_VERSION)/share/llvm/cmake/LLVMConfig.cmake
 
 # Managed in lldb-X.Y.links.in
-	rm -f $(CURDIR)/$(TARGET_BUILD)/$(BUILD_DIR)/lib/python*/site-packages/lldb/_lldb.so
+	rm -f $(DEB_INST)/usr/lib/llvm-$(LLVM_VERSION)/lib/python*/site-packages/lldb/_lldb.so
 
 # Manage the polly files. Sometimes, we build them. Sometimes not.
 	if test "$(POLLY_ENABLE)" = yes; then \


More information about the Pkg-llvm-team mailing list