ndiswrapper allows Linux users to use Windows drivers for PCI/USB network adapters on Linux. If you own a network device for which Linux support is still absent or premature, then you need to compile ndiswrapper yourself and install Windows driver for your network device. Fortunately, today's Linux supports most network devices out-of-box, so most distributions don't bother to include ndiswrapper. However, I am compiling ndiswrapper believing that Windows NDIS drivers would outperform native Linux drivers.
To my surprise, building the latest version of ndiswrapper (1.58rc1) did not require any patch. After compiling Linux 3.5.4, I downloaded the ndiswrapper source from the sourceforge site. I chose the testing version because I thought it would work better with Linux 3.5.x. I unpacked the source.
tar xzvf ndiswrapper-1.58rc1.tar.gz cd ndiswrapper-1.58rc1
I typed the following commands to compile and install ndiswrapper.
KVERS=3.5.4 make uninstall KVERS=3.5.4 make KVERS=3.5.4 make install
Then, I generated modules.* files again.
depmod -e -m -F /boot/System.map-3.5.4 3.5.4
The following files were installed by ndiswrapper.
/lib/modules/3.5.4/misc/ndiswrapper.ko /sbin/loadndisdriver /usr/sbin/ndiswrapper /usr/sbin/ndiswrapper-buginfo /usr/share/man/man8/loadndisdriver.8 /usr/share/man/man8/ndiswrapper.8