YCM автозаполняет и выделяет ошибки в стандартной библиотеке C ++. Однако, если я скачаю другую библиотеку, такую как OpenMPI, и напишу код, который импортирует <mpi.h>
Я могу скомпилировать его с помощью mpicc, но YCM говорит мне, что <mpi.h>
файл не найден, и все предоставляемые им функции помечены как недействительные в YCM. Есть ли способ это исправить? Какие изменения я должен сделать в ycm_extra_conf_py
файл для поддержки других загруженных библиотек?
Я нашел этот вопрос, когда искал ответ сам. Единственное решение, которое я нашел до сих пор, — это вручную отредактировать compile_commands.json и добавить требуемый mpi include dir, например, запустить
mpicc -showme
и добавить соответствующие
-I/usr/lib/x86_64-linux-gnu/openmpi/include/openmpi
параметры в файле conf. Я не видел содержимое ycm_extra_conf_py, но думаю, что-то подобное можно сделать. Надеюсь, это поможет.
Других решений пока нет …