It goes on. As you discovered there are a number of libraries and tools that will need to be installed. You can find the required libraries in the readme file of the kernel source directory. The other tools like menuconfig or xconfig will have dependency requirements also, but I don't know of a list that spells them out other than googling the error messages, since someone else has probably had the same need. What are you enabling in your kernel, a driver, or are you just trying to shrink it's size? Other than enabling a feature that is not available or making a secure kernel for a server, I don't think it is worth doing a custom kernel anymore, especially if you like to play with the latest 3D features. Otherwise you will be compiling and figuring our spec files for a lot of other things.