找到g ++使用的STL头的路径

时间:2014-01-14 10:05:40

标签: c++ gcc stl g++ msys

我需要在std::vector<T>的调试版本中查找一些内容,我不记得标题的实际位置。这是在Windows上的MSYS下,这很棘手,因为你有/include/mingw/include/mingw/mingw32/include/usr/include,我仍然找不到它们......

我知道一种方法,就是写一个这样的文件:

#include <vector>

int main() {
    return 0;
}

然后

$ g++ -E temp.cpp | grep vector

我们发现它就在这里:/mingw/lib/gcc/mingw32/4.8.1/include/c++/vector

但有更快的方法吗?我们可以在不使用这个技巧的情况下问g++吗?

1 个答案:

答案 0 :(得分:10)

您可以使用

显示完整的搜索路径
g++ -print-search-dirs

或者您可以找到一个特定的标题,而无需使用

的内容编写源文件
echo '#include <vector>' | g++ -x c++ -E - | grep '/vector"'