[Bug 1065593] New: Several so files missing in llvm4 packages
http://bugzilla.suse.com/show_bug.cgi?id=1065593 Bug ID: 1065593 Summary: Several so files missing in llvm4 packages Classification: openSUSE Product: openSUSE Tumbleweed Version: Current Hardware: Other OS: Other Status: NEW Severity: Normal Priority: P5 - None Component: Development Assignee: bnc-team-screening@forge.provo.novell.com Reporter: glin@suse.com QA Contact: qa-bugs@suse.de Found By: --- Blocker: --- When building bcc, it's looking for the so files from llvm such as libclangBasic.so, libLLVMMCParser.so, etc. After upgrading to llvm4, libclangBasic is only available in clang4-devel-static while libLLVM*.so are missing, and bcc could be built anymore. -- You are receiving this mail because: You are on the CC list for the bug.
http://bugzilla.suse.com/show_bug.cgi?id=1065593
Chenzi Cao
http://bugzilla.suse.com/show_bug.cgi?id=1065593
http://bugzilla.suse.com/show_bug.cgi?id=1065593#c1
Michal Srb
http://bugzilla.suse.com/show_bug.cgi?id=1065593
http://bugzilla.suse.com/show_bug.cgi?id=1065593#c2
--- Comment #2 from Michal Srb
http://bugzilla.suse.com/show_bug.cgi?id=1065593
http://bugzilla.suse.com/show_bug.cgi?id=1065593#c3
--- Comment #3 from Gary Ching-Pang Lin
The LLVM build mode was changed from the (not recommended and buggy) multiple-library mode into a single-library mode.
See https://bugzilla.opensuse.org/show_bug.cgi?id=1049703 for more details. There are also links to page where LLVM upstream developers tell that the old mode is not recommended and a list of bugs that it caused us.
In the current build mode all LLVM components end up in a single shared library called libLLVM.so. All clang components are only build as static libraries. (Sadly that is the only build mode supported by upstream for clang.)
As you already discovered, you need to add the clang4-devel-static to get the libclang* static libraries.
Bcc is currently using the `llvm_map_components_to_libnames` cmake function to get the list of LLVM libraries it should link to. I would expect that function to return only "LLVM", but instead it returns names of the individual libraries that do not exist. I have run into this problem before and I think that either the `llvm_map_components_to_libnames` function is broken, or it is not meant to be used by external projects. I have asked on llvm-dev mailing list (on Oct 23) and so far got not answer. It looks like time to create upstream bug.
Is it possible to work around the issue? so that I can at least build bcc while waiting the upstream fix. -- You are receiving this mail because: You are on the CC list for the bug.
http://bugzilla.suse.com/show_bug.cgi?id=1065593
http://bugzilla.suse.com/show_bug.cgi?id=1065593#c4
--- Comment #4 from Gary Ching-Pang Lin
http://bugzilla.suse.com/show_bug.cgi?id=1065593
http://bugzilla.suse.com/show_bug.cgi?id=1065593#c5
--- Comment #5 from Gary Ching-Pang Lin
http://bugzilla.suse.com/show_bug.cgi?id=1065593
http://bugzilla.suse.com/show_bug.cgi?id=1065593#c6
--- Comment #6 from Gary Ching-Pang Lin
http://bugzilla.suse.com/show_bug.cgi?id=1065593
http://bugzilla.suse.com/show_bug.cgi?id=1065593#c7
--- Comment #7 from Gary Ching-Pang Lin
participants (1)
-
bugzilla_noreply@novell.com