为C/ c++标准的libs、boost和第三方libs设置单独的ctags db。

时间:2022-05-23 06:54:28

I want to set up separate ctags databases for various libraries in /usr/include/ for use with OmniCppComplete.

我想在/usr/include/中为各种库设置单独的ctags数据库,以便与OmniCppComplete一起使用。

The idea is to be able to pull in only the libraries needed for a particular project in the target language - C or C++.

我们的想法是能够只使用目标语言(C或c++)的特定项目所需的库。

For example, I'd like to have one database for the standard C libraries, one for system libraries that might be used by either C or C++ programs ( sockets / networking comes to mind ) one for the standard C++ libs / STL / Boost, and then other databases for various third party libraries such as QT or glib. Then I could pull something in simply by typing set tags+= ~/.vim/somelib.tags in vim.

例如,我要一个标准C库的数据库,一个用于系统库可能使用C或c++程序(套接字/想到网络)的标准c++库/ STL /提升,然后其他数据库等各种第三方库QT或油嘴滑舌。然后,我可以通过输入set tags+= ~/.vim/somelib简单地插入一些内容。标签在vim中。

I assume that everything related to the C++ stdlib and STL are in the /usr/include/c++ and that Boost is all in /usr/include/boost. Unfortunately it seems that the standard C libs and system libs are just kind of dumped directly into /usr/include/ with a variety of other stuff.

我假设与c++ stdlib和STL相关的所有东西都在/usr/include/c+中,这个Boost都在/usr/include/boost.中不幸的是,标准的C libs和系统libs似乎直接被丢弃到/usr/include/和其他各种东西中。

How can I get a list of which files and directories belong to which libs? I'm on Ubuntu 8.04.

我怎样才能得到一个列表,其中哪些文件和目录属于libs?我在Ubuntu 8.04。

1 个解决方案

#1


1  

apt-file is your friend on Ubuntu.

apt-file是你在Ubuntu上的朋友。

The following command will give you a list of all include files for Boost:

下面的命令将为您提供一个所有包含文件的列表,用于Boost:

apt-file list -x "^libboost" | grep '/include/' | cut -f2 -d:

I'll leave the rest as an exercise for the reader!

剩下的就留给读者练习吧!

Update: For completeness, call apt-file update if you have never used apt-file before.

更新:为了完整性,如果您以前从未使用过apt文件,请调用apt文件更新。

#1


1  

apt-file is your friend on Ubuntu.

apt-file是你在Ubuntu上的朋友。

The following command will give you a list of all include files for Boost:

下面的命令将为您提供一个所有包含文件的列表,用于Boost:

apt-file list -x "^libboost" | grep '/include/' | cut -f2 -d:

I'll leave the rest as an exercise for the reader!

剩下的就留给读者练习吧!

Update: For completeness, call apt-file update if you have never used apt-file before.

更新:为了完整性,如果您以前从未使用过apt文件,请调用apt文件更新。