Clangd ложное срабатывание '' не найденоC++

Программы на C++. Форум разработчиков
Anonymous
 Clangd ложное срабатывание '' не найдено

Сообщение Anonymous »

У меня есть проект на C++, использующий CMake, GCC и Arch Linux. Я использую GCC, и проект компилируется правильно (как в IDE, так и в командной строке), но в Qt Creator возникают следующие ошибки:

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

heat_transfer_explicit_scheme.cpp:1:10: In included file: 'quadmath.h' file not found
float128.hpp:54:10: error occurred here
...
heat_transfer_explicit_scheme.cpp:1:10: In included file: no member named 'value' in 'boost::multiprecision::number_category'
number.hpp:131:399: error occurred here
Но этот заголовок присутствует в /usr/lib/gcc/x86_64-pc-linux-gnu/14.2.1/include, и нажатие #include откроет его в IDE.
Насколько я понимаю, /usr/lib/gcc/x86_64-pc-linux-gnu/14.2.1/include не является системным корнем по умолчанию, и clangd не знает об этом месте, поэтому я попытался добавить CMAKE_SYSROOT /usr/lib/gcc/x86_64-pc-linux-gnu/14.2.1/include как в этой ветке форума: Qt Forum — Qt Creator — модель кода clang не находит типы, даже если код компилируется. Но это не делает местоположение доступным для clangd.
Более того, после установки CMAKE_SYSROOT в CMakeLists.txt, указывающего на их местоположение, другие зависимости проекта (например, boost) не могут быть найдены с помощью find_package.
Кроме того, я пытался добавить /usr/lib/gcc/x86_64-pc- linux-gnu/14.2.1/include в PATH текущего сеанса терминала и откройте Qt Creator из этой среды, но, похоже, это не имеет никакого эффекта.
Qt Creator версии 14.0 .1 на основе Qt 6.7.2 (GCC 14.2.1 20240805, x86_64).
Clangd не индексирует эти файлы с помощью компилятора clang++, поскольку у него есть свои собственные реализации и не требуется встроенная проверка кода заголовков gcc . Но я использую в проекте g++ и хочу, чтобы clangd обрабатывал индексацию.

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

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