[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#952718: qtcreator: Clang code model fail to find stddef.h if libclang-common-8-dev package is not installed



Hi,

I've a question about whether libclang1-X should depend on
libclang-common-X-dev to always have the clang's builtin headers
available when libclang is installed.

A bit of context:
QtCreator uses libclang for its code model. If clang's builtin headers
are not available in the system, libclang will fail to find its builtin
headers (like stddef.h) and might fail to parse code and flag "#include
<stddef.h>" as an error because the header cannot be found (stddef.h is
one of the builtin headers).

This was reported to QtCreator's upstream in [2].


As seen in [0] and [1], libclang expect to have its builtin headers
available to work correctly.

While analyzing this bug, I found that kdevelop has the exact same issue
as QtCreator.
That is, if they are installed without the libclang's builtin headers,
they both fail to parse "#include <stddef.h>" as libclang can't find it.

Codelite is probably in the same case as it uses libclang too but I've
not tested it.


So, I'm thinking that libclang1-X should have a dependency on
libclang-common-X-dev as it seems all users of libclang will likely need
the builtin headers too. (For example, libclang1-8 should depend on
libclang-common-8-dev).

@LLVM Packaging Tream, what do you think about adding this dependency ?

Thanks :)

[0] http://lists.llvm.org/pipermail/cfe-dev/2018-April/057688.html
[1] http://clang.llvm.org/docs/LibTooling.html#builtin-includes
[2] https://bugreports.qt.io/browse/QTCREATORBUG-23451

-- 
Alexis Murzeau
PGP: B7E6 0EBB 9293 7B06 BDBC  2787 E7BD 1904 F480 937F

Attachment: signature.asc
Description: OpenPGP digital signature


Reply to: