I have an interesting question. I specify -I. and -I../.. during the g++
invocation. But the compiler doesn't know these paths. Why?

Look at this example:

  $ g++ -v -I. -I../.. -c config.cc

The -v makes gcc dump the following list before compilation:

  [...]
  #include "..." search starts here:
  #include <...> search starts here:
    /usr/lib/gcc/i686-pc-linux-gnu/4.7.1/../../../../include/c++/4.7.1
    
/usr/lib/gcc/i686-pc-linux-gnu/4.7.1/../../../../include/c++/4.7.1/i686-pc-linux-gnu
    /usr/lib/gcc/i686-pc-linux-gnu/4.7.1/../../../../include/c++/4.7.1/backward
    /usr/lib/gcc/i686-pc-linux-gnu/4.7.1/include
    /usr/local/include
    /usr/lib/gcc/i686-pc-linux-gnu/4.7.1/include-fixed
    /usr/include
  End of search list.
  End of search list.
  [...]

What's wrong here? I have another machine where . and ../.. are
mentioned at the top of the list and everything is fine. But here gcc
doesn't find the headers. What could be a reason for this? I really have
no idea.

gcc 4.7.1 on Arch Linux

T.M.
_______________________________________________
help-gplusplus mailing list
help-gplusplus@gnu.org
https://lists.gnu.org/mailman/listinfo/help-gplusplus

Reply via email to