C++ 如何在ubuntu';s C/C++;包括用于gvim的目录?
我在Windows7中使用GVIM7.4和TDM-GCC64。 我知道这个编译器的include目录, 并将路径适当地添加到gvim的标记搜索路径中。 窗户里一切都很好 但我是ubuntu新手,我目前安装了ubuntu 13.10(俏皮), 但是对编译器的include目录有点困惑 我发现其中一些目录是:C++ 如何在ubuntu';s C/C++;包括用于gvim的目录?,c++,c,linux,ubuntu,vim,C++,C,Linux,Ubuntu,Vim,我在Windows7中使用GVIM7.4和TDM-GCC64。 我知道这个编译器的include目录, 并将路径适当地添加到gvim的标记搜索路径中。 窗户里一切都很好 但我是ubuntu新手,我目前安装了ubuntu 13.10(俏皮), 但是对编译器的include目录有点困惑 我发现其中一些目录是: /usr/include /usr/src /usr/local/include /usr/include /usr/lib/gcc/i686-linux-gnu/4.8 /usr/lib/g
/usr/include
/usr/src
/usr/local/include
/usr/include
/usr/lib/gcc/i686-linux-gnu/4.8
/usr/lib/gcc/x86_64-linux-gnu/4.8/include
最后,我创建了一个shell脚本,如下所示:
#!/bin/sh
cd /usr/include
sudo ctags -R --c-kinds=+pxfvtcdeglmnsu --c++-kinds=+pxfvtcdeglmnsu --languages=C,C++ --langmap=C:.c.h --langmap=C++:.C.h.c.cpp.hpp.c++.cc.cp.cxx.h++.hh.hp.hxx --fields=+iaSm --extra=+qf -f tags *
cd /usr/src
sudo ctags -R --c-kinds=+pxfvtcdeglmnsu --c++-kinds=+pxfvtcdeglmnsu --languages=C,C++ --langmap=C:.c.h --langmap=C++:.C.h.c.cpp.hpp.c++.cc.cp.cxx.h++.hh.hp.hxx --fields=+iaSm --extra=+qf -f tags *
cd /usr/local/include
sudo ctags -R --c-kinds=+pxfvtcdeglmnsu --c++-kinds=+pxfvtcdeglmnsu --languages=C,C++ --langmap=C:.c.h --langmap=C++:.C.h.c.cpp.hpp.c++.cc.cp.cxx.h++.hh.hp.hxx --fields=+iaSm --extra=+qf -f tags *
cd /usr/include
sudo ctags -R --c-kinds=+pxfvtcdeglmnsu --c++-kinds=+pxfvtcdeglmnsu --languages=C,C++ --langmap=C:.c.h --langmap=C++:.C.h.c.cpp.hpp.c++.cc.cp.cxx.h++.hh.hp.hxx --fields=+iaSm --extra=+qf -f tags *
cd /usr/lib/gcc/i686-linux-gnu/4.8
sudo ctags -R --c-kinds=+pxfvtcdeglmnsu --c++-kinds=+pxfvtcdeglmnsu --languages=C,C++ --langmap=C:.c.h --langmap=C++:.C.h.c.cpp.hpp.c++.cc.cp.cxx.h++.hh.hp.hxx --fields=+iaSm --extra=+qf -f tags *
cd /usr/lib/gcc/x86_64-linux-gnu/4.8/include
sudo ctags -R --c-kinds=+pxfvtcdeglmnsu --c++-kinds=+pxfvtcdeglmnsu --languages=C,C++ --langmap=C:.c.h --langmap=C++:.C.h.c.cpp.hpp.c++.cc.cp.cxx.h++.hh.hp.hxx --fields=+iaSm --extra=+qf -f tags *
但是这个脚本正在生成一个巨大的标签文件,
因此,vim在搜索函数、变量、结构、,
原型等。
当我按下“提前感谢。我建议将/usr/include和/usr/local/include递归地作为头的最基本路径 <>在大多数UNIX类系统(包括Linux和FreeBSD分发)中,/UR/INEP是找到C和C++库头的最基本的地方。 系统管理员通常(但并非总是)会在/usr/local中安装其他软件,这通常(但并非总是)意味着添加的库将位于/usr/local/lib中,它们的C/C++头将位于/usr/local/include中 在某些类Unix系统上,可选软件安装在/opt而不是/usr/local中
通常在开源类Unix系统上,/usr/src将包含操作系统的源代码和头文件,包括内核和“用户区”(即用户可能从命令行使用的命令)。通常,除非您开发的应用程序应该与操作系统紧密集成,或者实际上是操作系统的一部分,否则您不需要/usr/src路径中的头文件(但不在/usr/include中)。我认为“一切”和“慢下来”都是相同结果的一部分;也就是说,如果不减慢Vim,就不可能拥有一切。因此,我认为您需要在某种程度上定义要使用的库,并仅为这些库的头生成标记。然后,请向我推荐标准C/C++头的最基本要求。此时,这对我来说已经足够了。/usr/local/include在我的情况下为空。仅/usr/include文件夹中的标记就有47.65MB,但我认为这是正常的。谢谢。C++特定的头通常在一个子目录下面/Ur/IORE,而/UR/IORD和其他子目录包含C接口头。由于C++经常使用C库,所以有可用的是很好的。但您可能希望查看/usr/include下面是否有多个版本的C++标题,并找到一种避免标记所有标题的方法。也许您的系统在/usr/include下还添加了其他库头。我刚刚标记了我的整个/usr/include,大约10 MB。你能告诉我当我通过ubuntu软件中心安装它们时,GNU科学库、BOOST、PDCurses、yxml11、tiny xml、zlib、glut等库头在哪里吗?我手边没有ubuntu系统,而且我已经用了好几年了,但是我很确定这些软件包把它们的头文件放在/usr/include下。在ubuntu的gnome终端上键入“manhier”,显示了一种类似UNIX的目录结构,我们在很久以前的学校时代就已经学习过这种结构。然而,它非常有用。非常感谢你。