(Shrug...) Some kind of an error in the ".config" file. I suggest that you first look at the source-code to see how the symbol is used. Then (after making a nice, safe
backup...) look at the (hidden) ".config" file to see whether the symbol is defined there.
Sometimes, a conditional-define symbol (which is what ".config" basically
is) must be included to get correct compilation.
If it compiles cleanly, you need to go back and recompile the whole thing:
- Make a nice, safe backup copy of ".config." (Oh, you did that already, didn't you?)
- Rename ".config" to (say) "foobar," because the next step will wipe it out...
- make distclean
- Rename "foobar" back to ".config" (notice the dot).
- make etc...
You
must do this so that you do not "mix apples and oranges," with usually-fatal results.
All kernel components must be compiled using exactly the same set of options.
Incidentally, no matter how much I "trust" the folks who prepare my (Gentoo...) distro, this is how I
always compile a new kernel. I back up the old config, run
make newconfig and the like, then back up the
new config and perform the same (
make distclean) process above. This guarantees that there is no "residue," and that everything is recompiled at the same time.