I installed boost using sudo apt-get install on Ubuntu. Later I did not have to give gcc the I flag alongwith the path to the boost libraries to use boost ! Nor did I do any pkg-config --cflags --libs of any sort. What is the mystery here ? How is gcc able to know where boost is and how is it linking to it automatically ?
How does gcc know where boost is installed
gcc;libraries;boost
Boost is a mostly header-only library, so there is no library to link with (most of the time).As for the headers, Ubuntu place them in /usr/include/, which is one of the include paths GCC use by default. So any #include <boost/foreach.hpp> will work out of the box on Ubuntu.