He's telling you that this is of course possible if USE_KCHMVIEWER is a
variable, but at the moment, it's not.
The compiler won't no about USE_KCHMVIEWER at all, because before it starts
to compile, the so called "preprocessor" already replaced every single chain
of characters that are "USE_KCHMVIEWER" with whatever you have defined in
#define.
if you defined it to be "3", then the compiler will just find "3" in the
source code.
int USE_KCHMVIEWER
becomes (after preprocessing and BEFORE compiling)
int 3
that's what the compiler gets.