My laptop has a Qualcomm Atheros QCA9377.

Output of lspci

03:00.0 Network controller: Qualcomm Atheros Device 0042 (rev 30)

which is not yet supported by Ubuntu (works on Windows). Bug Report here

Since I have no idea when it would be patched, I tried ndiswrapper.

Installing from the Software Center, would result in

FATAL: Module ndiswrapper not found.

both via ndisgtk and sudo modprobe ndiswrapper

So I compiled from source, but sudo make gave

 /home/bhav/Downloads/ndiswrapper-1.59/driver/crt.c: In function ‘_win_srand’:
/home/bhav/Downloads/ndiswrapper-1.59/driver/crt.c:470:2: error: implicit declaration of function ‘net_srandom’ [-Werror=implicit-function-declaration]
  net_srandom(seed);
  ^
cc1: some warnings being treated as errors
scripts/Makefile.build:258: recipe for target '/home/bhav/Downloads/ndiswrapper-1.59/driver/crt.o' failed
make[3]: *** [/home/bhav/Downloads/ndiswrapper-1.59/driver/crt.o] Error 1
Makefile:1386: recipe for target '_module_/home/bhav/Downloads/ndiswrapper-1.59/driver' failed
make[2]: *** [_module_/home/bhav/Downloads/ndiswrapper-1.59/driver] Error 2
make[2]: Leaving directory '/usr/src/linux-headers-4.2.0-040200rc8-generic'
Makefile:183: recipe for target 'modules' failed
make[1]: *** [modules] Error 2
make[1]: Leaving directory '/home/bhav/Downloads/ndiswrapper-1.59/driver'
Makefile:23: recipe for target 'driver' failed
make: *** [driver] Error 2

I tried 1.57, 1.58, 1.59. same error.

Then I found a patched version for the updated linux kernel here

But I can't compile that one either

/home/bhav/Downloads/nd/driver/loader.c: In function ‘load_sys_files’:
/home/bhav/Downloads/nd/driver/loader.c:157:4: error: implicit declaration of function ‘__vmalloc’ [-Werror=implicit-function-declaration]
    __vmalloc(load_driver->sys_files[i].size,
    ^
/home/bhav/Downloads/nd/driver/loader.c:156:19: warning: assignment makes pointer from integer without a cast
   pe_image->image =
                   ^
/home/bhav/Downloads/nd/driver/loader.c:207:5: error: implicit declaration of function ‘vfree’ [-Werror=implicit-function-declaration]
     vfree(driver->pe_images[i].image);
     ^
/home/bhav/Downloads/nd/driver/loader.c: In function ‘add_bin_file’:
/home/bhav/Downloads/nd/driver/loader.c:298:2: error: implicit declaration of function ‘vmalloc’ [-Werror=implicit-function-declaration]
  bin_file->data = vmalloc(driver_file->size);
  ^
/home/bhav/Downloads/nd/driver/loader.c:298:17: warning: assignment makes pointer from integer without a cast
  bin_file->data = vmalloc(driver_file->size);
                 ^
/home/bhav/Downloads/nd/driver/loader.c: In function ‘wrapper_ioctl’:
/home/bhav/Downloads/nd/driver/loader.c:789:15: warning: assignment makes pointer from integer without a cast
   load_driver = vmalloc(sizeof(*load_driver));
               ^
/home/bhav/Downloads/nd/driver/loader.c: In function ‘wrapper_ioctl_compat’:
/home/bhav/Downloads/nd/driver/loader.c:884:11: warning: assignment makes pointer from integer without a cast
   kdriver = vmalloc(sizeof(*kdriver));
           ^
cc1: some warnings being treated as errors
scripts/Makefile.build:258: recipe for target '/home/bhav/Downloads/nd/driver/loader.o' failed
make[3]: *** [/home/bhav/Downloads/nd/driver/loader.o] Error 1
Makefile:1386: recipe for target '_module_/home/bhav/Downloads/nd/driver' failed
make[2]: *** [_module_/home/bhav/Downloads/nd/driver] Error 2
make[2]: Leaving directory '/usr/src/linux-headers-4.2.0-040200rc8-generic'
Makefile:183: recipe for target 'modules' failed
make[1]: *** [modules] Error 2
make[1]: Leaving directory '/home/bhav/Downloads/nd/driver'
Makefile:23: recipe for target 'driver' failed
make: *** [driver] Error 2

I need help.

P.S. Recently upgraded to 15.04 from 14.04

bhav@kal-el:~/Downloads/nd$ uname -r
4.2.0-040200rc8-generic

EDIT-1:

Output oflspci -knn | grep Net -A2

03:00.0 Network controller [0280]: Qualcomm Atheros Device [168c:0042] (rev 30)
    Subsystem: Foxconn International, Inc. Device [105b:e09a]

marked as duplicate by David Foerster, Pilot6, Eric Carvalho, Ravan, pl_rock Dec 12 '15 at 9:37

This question has been asked before and already has an answer. If those answers do not fully address your question, please ask a new question.

  • Please edit your question and add output of lspci -knn | grep Net -A2 terminal command. Ndiswrapper will never work with this adapter. – Pilot6 Oct 9 '15 at 16:18
  • @Pilot6 , uploaded output. If ndiswrapper isn't going to work then I guess I will have to wait for the patch. Any specific reason why ndiswrapper won't work? – Bhav Oct 9 '15 at 16:27
  • 1
    Ndiswrapper can install only WindowsXP drivers. – Pilot6 Oct 9 '15 at 16:47
  • [168c:0042] is not supported yet. – Pilot6 Oct 9 '15 at 16:49

I've tried the github version with gcc 4.9.2

git clone https://github.com/Schwartz/ndiswrapper-patched-3.14.git
cd ndiswrapper-patched-3.14
make

Output

make -C utils
make[1]: Entering directory '/home/aboettger/tmp/ndiswrapper-patched-3.14/utils'
gcc -g -Wall -I../driver  -o loadndisdriver loadndisdriver.c
make[1]: Leaving directory '/home/aboettger/tmp/ndiswrapper-patched-3.14/utils'
make -C driver
make[1]: Entering directory '/home/aboettger/tmp/ndiswrapper-patched-3.14/driver'
make -C /usr/src/linux-headers-3.19.0-30-generic M=/home/aboettger/tmp/ndiswrapper-patched-3.14/driver
make[2]: Entering directory '/usr/src/linux-headers-3.19.0-30-generic'
  LD      /home/aboettger/tmp/ndiswrapper-patched-3.14/driver/built-in.o
  MKEXPORT /home/aboettger/tmp/ndiswrapper-patched-3.14/driver/crt_exports.h
  MKEXPORT /home/aboettger/tmp/ndiswrapper-patched-3.14/driver/hal_exports.h
  MKEXPORT /home/aboettger/tmp/ndiswrapper-patched-3.14/driver/ndis_exports.h
  MKEXPORT /home/aboettger/tmp/ndiswrapper-patched-3.14/driver/ntoskernel_exports.h
  MKEXPORT /home/aboettger/tmp/ndiswrapper-patched-3.14/driver/ntoskernel_io_exports.h
  MKEXPORT /home/aboettger/tmp/ndiswrapper-patched-3.14/driver/rtl_exports.h
  MKEXPORT /home/aboettger/tmp/ndiswrapper-patched-3.14/driver/usb_exports.h
  MKSTUBS /home/aboettger/tmp/ndiswrapper-patched-3.14/driver/win2lin_stubs.h
  CC [M]  /home/aboettger/tmp/ndiswrapper-patched-3.14/driver/crt.o
  CC [M]  /home/aboettger/tmp/ndiswrapper-patched-3.14/driver/hal.o
  CC [M]  /home/aboettger/tmp/ndiswrapper-patched-3.14/driver/iw_ndis.o
  CC [M]  /home/aboettger/tmp/ndiswrapper-patched-3.14/driver/loader.o
  CC [M]  /home/aboettger/tmp/ndiswrapper-patched-3.14/driver/ndis.o
  CC [M]  /home/aboettger/tmp/ndiswrapper-patched-3.14/driver/ntoskernel.o
  CC [M]  /home/aboettger/tmp/ndiswrapper-patched-3.14/driver/ntoskernel_io.o
  CC [M]  /home/aboettger/tmp/ndiswrapper-patched-3.14/driver/pe_linker.o
  CC [M]  /home/aboettger/tmp/ndiswrapper-patched-3.14/driver/pnp.o
  CC [M]  /home/aboettger/tmp/ndiswrapper-patched-3.14/driver/proc.o
  CC [M]  /home/aboettger/tmp/ndiswrapper-patched-3.14/driver/rtl.o
  CC [M]  /home/aboettger/tmp/ndiswrapper-patched-3.14/driver/wrapmem.o
  CC [M]  /home/aboettger/tmp/ndiswrapper-patched-3.14/driver/wrapndis.o
  CC [M]  /home/aboettger/tmp/ndiswrapper-patched-3.14/driver/wrapper.o
  CC [M]  /home/aboettger/tmp/ndiswrapper-patched-3.14/driver/usb.o
  AS [M]  /home/aboettger/tmp/ndiswrapper-patched-3.14/driver/win2lin_stubs.o
  AS [M]  /home/aboettger/tmp/ndiswrapper-patched-3.14/driver/lin2win.o
  LD [M]  /home/aboettger/tmp/ndiswrapper-patched-3.14/driver/ndiswrapper.o
  Building modules, stage 2.
  MODPOST 1 modules
  CC      /home/aboettger/tmp/ndiswrapper-patched-3.14/driver/ndiswrapper.mod.o
  LD [M]  /home/aboettger/tmp/ndiswrapper-patched-3.14/driver/ndiswrapper.ko
make[2]: Leaving directory '/usr/src/linux-headers-3.19.0-30-generic'
make[1]: Leaving directory '/home/aboettger/tmp/ndiswrapper-patched-3.14/driver
  • There is actually no problem to build ndiswrapper. But it will not help OP. – Pilot6 Oct 9 '15 at 18:04

Not the answer you're looking for? Browse other questions tagged or ask your own question.