I'm trying to install ndiswrapper to get my wireless Netgear to work. I did the following:

apt-get install ndiswrapper-source

Which completes successfully.


apt-get install ndiswrapper-dkms

Which returns: Setting up dkms ( ... Setting up ndiswrapper-dkms (1.57-1ubuntu1) ... Loading new ndiswrapper-1.57 DKMS files... First Installation: checking all kernels... Building only for 3.11.0-19-generic Building initial module for 3.11.0-19-generic Error! Bad return status for module build on kernel: 3.11.0-19-generic (x86_64) Consult /var/lib/dkms/ndiswrapper/1.57/build/make.log for more information.

When I look at /var/lib/dkms/ndiswrapper/1.57/build/make.log I see:

Cannot find kernel build files in /usr/src/linux-headers-3.11.0-19-generic
Please give the path to kernel build directory with
the KBUILD=<path> argument to make

Upon closed examination the makefile expects to find:



What's going wrong? Looks like an incompatibility between the ndiswrapper and the kernel. But I'm using the latest version of both.

Update: I downloaded The driver compiled fine and I was able to install my driver:

ndiswrapper -l
bcmwlhigh6 : driver installed
device (0846:9011) present

However, I still have no wireless, iwconfig does not show anything. I noticed that:

modprobe ndiswrapper

Returns nothing.

Then I did: dmesg|grep ndis

And voila. Seems like even though the driver compiled and installed successfully it's all broken, possibly due to the kernel mismatch or something...

[  495.031481] ndiswrapper: module verification failed: signature and/or required key missing - tainting kernel
[  495.032287] ndiswrapper version 1.59 loaded (smp=yes, preempt=no)
[  495.295718] ndiswrapper (import:232): unknown symbol: NDIS.SYS:'NdisQueueIoWorkItem'
[  495.295725] ndiswrapper (import:232): unknown symbol: NDIS.SYS:'NdisFreeIoWorkItem'
[  495.295729] ndiswrapper (import:232): unknown symbol:     NDIS.SYS:'NdisMSetMiniportAttributes'
[  495.295734] ndiswrapper (import:232): unknown symbol: NDIS.SYS:'NdisMResetComplete'
[  495.295737] ndiswrapper (import:232): unknown symbol: NDIS.SYS:'NdisMAllocatePort'
[  495.295741] ndiswrapper (import:232): unknown symbol: NDIS.SYS:'NdisAllocateIoWorkItem'
[  495.295744] ndiswrapper (import:232): unknown symbol:    NDIS.SYS:'NdisMSendNetBufferListsComplete'
[  495.295748] ndiswrapper (import:232): unknown symbol: NDIS.SYS:'NdisMDeregisterMiniportDriver'
[  495.295751] ndiswrapper (import:232): unknown symbol:   NDIS.SYS:'NdisAllocateNetBufferListPool'
[  495.295756] ndiswrapper (import:232): unknown symbol: NDIS.SYS:'NdisMNetPnPEvent'
[  495.295761] ndiswrapper (import:232): unknown symbol: NDIS.SYS:'NdisMRegisterMiniportDriver'
[  495.295765] ndiswrapper (import:232): unknown symbol: NDIS.SYS:'NdisMFreePort'
[  495.295768] ndiswrapper (import:232): unknown symbol: NDIS.SYS:'NdisMIndicateReceiveNetBufferLists'
[  495.295772] ndiswrapper (import:232): unknown symbol: NDIS.SYS:'NdisMPauseComplete'
[  495.295776] ndiswrapper (import:232): unknown symbol: NDIS.SYS:'NdisFreeNetBufferListPool'
[  495.295779] ndiswrapper (import:232): unknown symbol: NDIS.SYS:'NdisCancelTimerObject'
[  495.295783] ndiswrapper (import:232): unknown symbol: NDIS.SYS:'NdisOpenConfigurationEx'
[  495.295786] ndiswrapper (import:232): unknown symbol: NDIS.SYS:'NdisSetTimerObject'
[  495.295790] ndiswrapper (import:232): unknown symbol: NDIS.SYS:'NdisFreeTimerObject'
[  495.295794] ndiswrapper (import:232): unknown symbol: NDIS.SYS:'NdisAllocateTimerObject'
[  495.295797] ndiswrapper (import:232): unknown symbol: NDIS.SYS:'NdisMIndicateStatusEx'
[  495.295801] ndiswrapper (import:232): unknown symbol: NDIS.SYS:'NdisFreeNetBufferList'
[  495.295808] ndiswrapper (import:232): unknown symbol: NDIS.SYS:'NdisMGetBusData'
[  495.295812] ndiswrapper (import:232): unknown symbol: NDIS.SYS:'NdisGetSystemUpTimeEx'
[  495.295815] ndiswrapper (import:232): unknown symbol: NDIS.SYS:'NdisAllocateNetBufferAndNetBufferList'
[  495.295819] ndiswrapper (import:232): unknown symbol: NDIS.SYS:'NdisAllocateMdl'
[  495.295822] ndiswrapper (import:232): unknown symbol: NDIS.SYS:'NdisFreeMdl'
[  495.295828] ndiswrapper (import:232): unknown symbol: NDIS.SYS:'NdisMOidRequestComplete'
[  495.295832] ndiswrapper (import:232): unknown symbol: NDIS.SYS:'NdisAllocateMemoryWithTagPriority'
[  495.295839] ndiswrapper (import:232): unknown symbol: WDFLDR.SYS:'WdfVersionBind'
[  495.295841] ndiswrapper (import:232): unknown symbol: WDFLDR.SYS:'WdfVersionBindClass'
[  495.295844] ndiswrapper (import:232): unknown symbol:  WDFLDR.SYS:'WdfVersionUnbindClass'
[  495.295847] ndiswrapper (import:232): unknown symbol: WDFLDR.SYS:'WdfVersionUnbind'
[  495.295849] ndiswrapper (load_sys_files:200): couldn't prepare driver 'bcmwlhigh6'
[  495.296262] ndiswrapper (load_wrap_driver:103): couldn't load driver bcmwlhigh6; check system log for messages from 'loadndisdriver'
[  495.296300] usbcore: registered new interface driver ndiswrapper

2 Answers 2


Ended up downloading https://launchpad.net/ubuntu/+source/ndiswrapper/1.59-1/ndiswrapper_1.59.orig.tar.gz

then make and make install. After downloading the correct driver bcmn43xx64 as described in Unable to get wireless netgear WNDA3100v2 to work I was able to connect to wlan.


I expect you are running Ubuntu 12.04.4 Precise. The ndiswrapper version in the repositories is 1.57. However, 12.04.4 uses the same kernel, build tools, etc. as Ubuntu 13.10. I expect you'd have better luck downloading and installing ndiswrapper 1.58 from Saucy here: http://packages.ubuntu.com/search?keywords=ndiswrapper&searchon=names&suite=saucy&section=all

In order to use ndiswrapper-source, it must first be extracted and compiled. From the README:

less /usr/share/doc/ndiswrapper-source/README.Debian

Building ndiswrapper kernel modules with module-assistant

Please install the module-assistant package and issue the following commands:-

$ m-a prepare
$ m-a a-i ndiswrapper

The above commands will prepare, compile, package and install a set of ndiswrapper modules for your kernel.

m-a is short for module-assistant, and a-i is short for auto-install. Please see the module-assistant documentation for further details.

In Ubuntu, those commands require sudo.

  • I actually tried that too. I get "Bad luck, the kernel headers for the target kernel version could be found and you did not specify other valid kernel headers to use."
    – Ya.
    Apr 12, 2014 at 0:47
  • Also it seems like it's the same code version 1.57, just packaged differently. "Unpacking ndiswrapper-source (from .../ndiswrapper-source_1.57-1ubuntu1_all.deb) ... Setting up ndiswrapper-source (1.57-1ubuntu1) ..."
    – Ya.
    Apr 12, 2014 at 0:52
  • Are you saying that if you download 1.58-2 from my link that it unpacks as 1.57?? Also, do you have linux-headers-generic installed?
    – chili555
    Apr 12, 2014 at 1:06
  • Yep. that's exactly what appears to be happening.
    – Ya.
    Apr 12, 2014 at 1:15

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .