Syntastic cpp:致命错误“;QApplication:没有此类文件或目录“; 不知道Perl,我无法为我所实验的新C++库配置SytTASTH。Vim拒绝识别头文件。下面是一个编译良好但syntastic显示错误的程序: #include <QApplication> <----------- line of error as in title #include <QPushButton> int main(int argc, char *argv[]) { QApplication app(argc, argv); QPushButton hello("Hello world!"); hello.resize(100, 30); hello.show(); return app.exec(); }

Syntastic cpp:致命错误“;QApplication:没有此类文件或目录“; 不知道Perl,我无法为我所实验的新C++库配置SytTASTH。Vim拒绝识别头文件。下面是一个编译良好但syntastic显示错误的程序: #include <QApplication> <----------- line of error as in title #include <QPushButton> int main(int argc, char *argv[]) { QApplication app(argc, argv); QPushButton hello("Hello world!"); hello.resize(100, 30); hello.show(); return app.exec(); },c++,qt,vim,syntastic,C++,Qt,Vim,Syntastic,以及my.gvimrc中的syntastic相关行: "===============================SYNTASTICSETTINGS================================================ "set statusline+=%#warningmsg# "set statusline+=%{SyntasticStatuslineFlag()} "set statusline+=%* let g:syntastic_cpp_include_

以及my.gvimrc中的syntastic相关行:

"===============================SYNTASTICSETTINGS================================================
"set statusline+=%#warningmsg#
"set statusline+=%{SyntasticStatuslineFlag()}
"set statusline+=%*
let g:syntastic_cpp_include_dirs = ['../include','include']
let g:syntastic_cpp_check_header = 1
let g:syntastic_enable_signs=1
let g:syntastic_quiet_warnings=1
set wildchar=<Tab> wildmenu wildmode=full
“=============================================================================================SyntasticsSettings================================================
“设置状态行+=%#警告消息#
“设置statusline+=%{SyntasticStatuslineFlag()}”
“设置状态行+=%*
设g:syntastic_cpp_include_dirs=['../include','include']
设g:syntastic\u cpp\u check\u header=1
设g:syntastic_enable_signs=1
设g:syntastic\u quiet\u warnings=1
设置wildchar=wildmenu wildmode=full

我非常感谢您帮助我学习syntastic和语法检查器的工作原理,因为我怀疑每当我使用不同的开发工具包时,这个问题都会再次出现。谢谢

您是否尝试将
syntastic\u cpp\u include\u dirs
设置为
/usr/include/qt4/QtGui
?看起来它应该给出头所在的目录。

我复制了最新版本的文件

现在syntastic不再给我带来麻烦了。我以前的版本,一直给我带来问题是

是的,我做到了。。尝试了不同的变化。不工作!有没有办法将
/usr/include
的所有子目录添加到
syntastic_cpp_include_dirs
?您在cpp.vim中定义了
g:syntastic_cpp_include_dirs
(无论如何都不应该这样做),然后在
.gvimrc
中重新定义了相同的变量。我不是QT方面的专家,但是使用
g:syntastic\u cpp\u include\u dirs
应该可以。您使用什么命令行来编译您的文件并使其正常工作?谢谢您的提示。我使用cmake构建它,它几乎可以自动检测包。我正试图找出每个文件。PS>我已经从我的cpp.vim文件中删除了g:syntastic_cpp_include_dirs。这并没有解决我的问题。这个答案也不能解释问题所在。
"===============================SYNTASTICSETTINGS================================================
"set statusline+=%#warningmsg#
"set statusline+=%{SyntasticStatuslineFlag()}
"set statusline+=%*
let g:syntastic_cpp_include_dirs = ['../include','include']
let g:syntastic_cpp_check_header = 1
let g:syntastic_enable_signs=1
let g:syntastic_quiet_warnings=1
set wildchar=<Tab> wildmenu wildmode=full