Trying to use the libclang Dub package

bachmeier no at spam.net
Fri Jul 20 14:03:20 UTC 2018


On Friday, 20 July 2018 at 10:31:44 UTC, Laurent Tréguier wrote:
> On Thursday, 19 July 2018 at 15:42:02 UTC, bachmeier wrote:
>> Found the problem. The libclang package is looking for 
>> /usr/lib/llvm-3.9/lib/libclang.so. For some reason, Ubuntu has 
>> libclang.so.1. Creating a symlink in that directory to 
>> libclang.so is a solution.
>
> Do you have the development package (probably something like 
> libclang-3.9-dev) installed ? Usually they are the ones 
> containing the correct symlink (see 
> https://forum.dlang.org/thread/ea9432f8d37a563bc4920d0bb8748ae7ab23dfd4.camel@winder.org.uk)

Yeah, I didn't need the symlink on a different machine with 
Ubuntu 18.04. After some digging around, I found that I had 
libclang1-3.9, libclang-dev, and libclang-common-3.9-dev 
installed. libclang1-3.9 installs libclang.so.1. The one I was 
missing was libclang-3.9-dev.

It's confusing and I think this could be handled better by the 
distro. But this is also one of the reasons I'm not a fan of dub. 
The user is left to sort through these dependencies themselves, 
and that means it's really not suitable for packages that link to 
C code (which is most of what I do). One of the main selling 
points of D is its C interoperability, but a lot of new users 
would walk away rather than trying to figure this out, concluding 
that D is buggy.


More information about the Digitalmars-d-learn mailing list