Question

I need to look something up in the debug version of std::vector<T>, and I can't remember where the headers actually are. This is under MSYS on Windows, where this is tricky, because you have /include, /mingw/include, /mingw/mingw32/include, /usr/include, and I still can't find them...

I know one way, that is to write a file like this:

#include <vector>

int main() {
    return 0;
}

Then

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

And we find that it's here: /mingw/lib/gcc/mingw32/4.8.1/include/c++/vector

But is there a faster way? Can we ask g++ without using this trick?

Was it helpful?

Solution

You can display the full search paths with

g++ -print-search-dirs

or you can find a specific header without writing a source file with something along the lines of

echo '#include <vector>' | g++ -x c++ -E - | grep '/vector"'
Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top