Нет, это на самом деле невозможно без пользовательского кода Emacs Lisp.
В Flycheck нет встроенного решения для этой проблемы, и, вероятно, никогда не будет такого из-за разнообразия инструментов и систем сборки C/C++, которые все используют другой подход для определения и хранения флагов компилятора.
Следовательно, вам нужно написать собственный код Emacs Lisp для заполнения flycheck-clang-include-path
или flycheck-gcc-include-path
(в зависимости от того, какую проверку вы используете) тем, что вы получаете из pkg-config
. Я не знаю Gtk, поэтому, к сожалению, я не могу помочь вам с тем, как этот код должен выглядеть точно.
Обычно вы пишете функцию, которая вызывает pkg-config
и устанавливает переменную, и добавляете эту функцию в c-mode-hook
. Взгляните на расширения flycheck-haskell или flycheck-dmd-dub , которые устанавливают параметры Flycheck для Haskell и D соответственно на основе базовых систем сборки.
Это лучшее решение, которое вы получаете, поскольку отсутствие стандартизированных инструментов сборки делает невозможным более сложную поддержку C/C++ без больших усилий.
Отказ от ответственности: я сопровождающий Flycheck.