Косая черта Clang в заголовках #include не читает правильное местоположение файла?C++

Программы на C++. Форум разработчиков
Anonymous
 Косая черта Clang в заголовках #include не читает правильное местоположение файла?

Сообщение Anonymous »

В одном из моих проектов C++ у меня есть заголовок, который выглядит следующим образом:

Код: Выделить всё

    #include 
Это ссылка на заголовок, расположенный в Qt/6.7.2/macos/lib/QtCore.framework/Headers. Хотя qglobal.h существует, он находится в каталоге .../QtCore.framework/Headers/, а не в каталоге /QtCore.framework/Headers/QtCore. Функционально дерево выглядит следующим образом:

Код: Выделить всё

 - QtCore
- qglobal.h
А QtCore — это файл, который выглядит следующим образом:

Код: Выделить всё

    #ifndef QT_QTCORE_MODULE_H
#define QT_QTCORE_MODULE_H
#include 
#include "qglobal.h"
// ...a bunch of other headers
Хотя указанный выше каталог заголовков включен в мой compile_commands.json, clangd не распознает файл заголовка, и я получаю следующее ошибка:

Код: Выделить всё

'QtCore/qglobal.h' file not foundclang(pp_file_not_found)
Компиляция проекта с помощью qmake работает нормально, но clangd просто не находит правильный каталог. Однако когда я перемещаю заголовок в подкаталог QtCore, созданный вручную, он работает нормально.
Есть ли какой-нибудь способ заставить clangd распознать файл?

Подробнее здесь: https://stackoverflow.com/questions/790 ... e-location

Вернуться в «C++»