Linux内核中为了适配众多架构或者功能,设计了非常多的宏,代码调试时,很难判断某个宏是打开的还是关闭的,这里推荐一种方法,可以快速的判断哪些宏是打开的,哪些是关闭的。

在想要确定是否会被编译的位置插入 111 222 等字符,如果编译报错,则表示此处是宏打开的地方,会被编译进去。

如下图,插入若干字符后,编译,333 位置报错,说明333 处的代码 \#define AP_PROFILE_PATH "/etc/Wireless/RT2860/RT2860.dat" 是要被编译进去的,此处实例就知道了此代码使用的配置文件是哪个。

macro

确定 333 处的代码会被编译后,将 333 注释掉,再编译就 OK 了。

macro-success