
Estou usando o Flycheck no meu Emacs e estou começando a aprender GTK. No entanto, o Flycheck obviamente não está ciente dessas coisas e me dá erros nesses #include
programas.
Eu tentei incluir manualmente cada uma das coisas na opção de caminho de inclusão, mas isso é muito insano - há uma quantidade enorme lá! Ao compilar a partir da linha de comando, pkg-config
é usado justamente por esse motivo. Existe uma maneira de fazer com que o Flycheck faça algo semelhante? Como usa gcc
como verificador de sintaxe, acho que deveria ser possível, só não sei como.
Responder1
Não, isso não é possível sem o código Emacs Lisp personalizado.
Não existe uma solução integrada para esse problema no Flycheck, e provavelmente nunca haverá uma, devido à diversidade de ferramentas e sistemas de construção C/C++, todos com uma abordagem diferente para descobrir e armazenar sinalizadores do compilador.
Portanto, você precisa escrever um código Emacs Lisp personalizado para preencher flycheck-clang-include-path
ou flycheck-gcc-include-path
(dependendo de qual verificador você está usando) com o que você obtém do arquivo pkg-config
. Eu não conheço Gtk, então infelizmente não posso ajudá-lo com a aparência exata desse código.
Geralmente, você escreveria uma função que chama pkg-config
e define a variável e adicionaria essa função a c-mode-hook
. Dê uma olhada noflycheck-haskellouflycheck-dmd-dubextensões, que definem as configurações do Flycheck para Haskell e D respectivamente com base nos sistemas de construção subjacentes.
Essa é a melhor solução que você obtém, pois a falta de ferramentas de construção padronizadas torna impossível fornecer suporte mais sofisticado para C/C++ sem um grande esforço.
Isenção de responsabilidade:Eu sou o mantenedor do Flycheck.