On Tue, 2008-11-11 at 14:58 +0100, Jörn Engel wrote: [...] > So what is the right solution to this problem? Call "gcc --version" and > parse the (deliberately hard) output? Or make a copy of the gcc headers There is `gcc -dumpversion`. But it doesn't help if your compiler is from e.g. /opt/gcc-4.1.2 (where mine usually are). And `which`, `type -all`, and similar also doesn't really help as the reported pathname can be actually the ccache binary .... So you want to use the output of ---- snip ---- gcc -v -E - </dev/null 2>&1 >/dev/null | sed -n -e '/^#include <\.\.\.> search starts here:/,/^End of search list\./s/^ \(.*\)/\1/p' ---- snip ---- which also seems to work with non-standard paths (like /opt) and ccache in between. Bernd PS: The core of the above line is from http://sourceware.org/ml/crossgcc/2006-12/msg00038.html. The quite trivial `sed` filter is by me. -- Firmix Software GmbH http://www.firmix.at/ mobil: +43 664 4416156 fax: +43 1 7890849-55 Embedded Linux Development and Services -- To unsubscribe from this list: send the line "unsubscribe linux-sparse" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html