Since gcc 4.6.0, installed plugin headers for the C++ language (i.e., those in /usr/lib/gcc/x86_64-linux-gnu/4.6/plugin/include/cp/) include a number of files as "c-family/..." (e.g, cp/cp-tree.h includes "c-family/c-common.h"), however, those headers do not exist in the c-family/ subdirectory. Instead, they all seem to be installed into the /usr/lib/gcc/x86_64-linux-gnu/4.6/plugin/include/ directory. Here is the error message I get when trying to build my plugin: /usr/lib/gcc/x86_64-linux-gnu/4.6.1/plugin/include/cp/cp-tree.h:43:31: fatal error: c-family/c-common.h: No such file or directory Manually removing the c-family/ prefix from the include directives in header files in the cp/ subdirectory fixed the problem for me.
Author: eraman Date: Thu Sep 15 19:18:26 2011 New Revision: 178892 URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=178892 Log: Backport r176741 from trunk. 2011-09-15 Easwaran Raman <eraman@google.com> Backport r176741 from trunk. 2011-07-22 Romain Geissler <romain.geissler@gmail.com> PR plugins/45348 PR plugins/48425 PR plugins/46577 * Makefile.in: Do not flatten c-family directory when installing plugin headers. gcc/c-family/ChangeLog.google-4_6: 2011-09-15 Easwaran Raman <eraman@google.com> Backport r176741 from trunk. 2011-07-25 Romain Geissler <romain.geissler@gmail.com> * c-pretty-print.h: Search c-common.h in c-family. Added: branches/google/gcc-4_6/gcc/c-family/ChangeLog.google-4_6 Modified: branches/google/gcc-4_6/ (props changed) branches/google/gcc-4_6/gcc/ChangeLog.google-4_6 branches/google/gcc-4_6/gcc/Makefile.in branches/google/gcc-4_6/gcc/c-family/c-pretty-print.h Propchange: branches/google/gcc-4_6/ ('svn:mergeinfo' modified)
Fixed since GCC 4.7.0 by r176741.