I am using GCC precompiled headers in my project with multi-architecture build, but things break down when I try to place it in a directory different from current source's directory.
The file is included with double quotes, and it works if I change it to angle brackets, but the problem is that I have a lot of other projects that use the same precompiled header name, so changing all of them to angle brackets is not desirable as it may create ambiguity about which header to include in Visual Studio build of the same files.
GCC searches current directory for double-quote includes before its search path. I can work around it using -I-
option (e.g. -Ipch_dir.i686 -I-
), so that precompiled headers directory is searched before the current directory, but this option is deprecated. GCC suggests I use -iquote
, but it does not have the same effect as -I-
.
So the question is how do I make it work without changing all precompiled headers include directives to angle brackets and using a deprecated GCC switch?