<div dir="ltr"><div>Hi,</div><div><br></div><div>I'm looking into updating the LLVM Debian packaging to use CMake instead of autotools. I've hit some issues in building LLDB to do with the use of BUILD_SHARED_LIBS. I thought I should email the list before proposing any changes, as described below.</div><div><br></div><div>Many of the libraries in LLDB are not specified as being shared or static in the CMake files. If you set BUILD_SHARED_LIBS, then it will attempt to build them as shared; this fails due to undefined library dependencies. I looked at adding them, but found there were some circular dependencies which made it a bit messy. Also, it doesn't seem very useful to build them as shared objects. Since the Makefiles only support building the internal libraries as static, I figure the CMake files should be updated to do the same.</div><div><br></div><div>With the internal libraries built as static archives, then lldb will build successfully (with some minor dependency additions; pthread, dl, and LLVM's runtimedyld component). There are then some issues with loading the Python extension module. The extension module is a symlink to liblldb.so, whose RPATH entries aren't valid relative to the symlink target. This can be resolved by adding a symlink from lib/python<version>/site-packages/lib to lib.<br></div><div><br></div><div>Any issues? If not, I'll send a patch through soon.<br></div><div><br></div><div>Cheers,</div><div>Andrew</div></div>