I am LAZY bones? AN ancient AND boring SITE

2007年 08月 17日 的归档

GCC_VERSION

......
#include <ansidecl.h>
......
#ifdef GCC_VERSION
int g_nGccVersion=GCC_VERSION;
#else
int g_nGccVersion=0;
#endif
printf( "GCC_VERSION: %d\n", g_nGccVersion );
.....

这样可以输出编译环境的GCC版本。在只有二进制文件的情况下,就可以确认一下适不适合自己的系统了。以下这段取自ansidecl.h:

/* This macro simplifies testing whether we are using gcc, and if it
is of a particular minimum version. (Both major &amp; minor numbers are
significant.)  This macro will evaluate to 0 if we are not using
gcc at all.  */
#ifndef GCC_VERSION
#define GCC_VERSION (__GNUC__ * 1000 + __GNUC_MINOR__)
#endif /* GCC_VERSION */

但目前不知道编译环境的内核版本怎么输出来。