3

I've been trying to get my Belkin AC867 Dual Band USB adapter to work with Ubuntu 15.04 with no success. I followed this tutorial http://blog.danielscrivano.com/installing-rtl8812au-on-linux-for-wireless-dual-band-usb-adapters/. I'm currently online by via bluetooth tethering.

I was hoping that it would work but I am getting an error message when I enter the following command in the terminal window:

    cd rtl8821AU_8821AU_linux
    make

After typing make is when I get an error at the end of the code script

jonathan@pc:~/rtl8812AU_8821AU_linux$ make
make ARCH=x86_64 CROSS_COMPILE= -C /lib/modules/3.19.0-16-generic/build M=/home/jonathan/rtl8812AU_8821AU_linux  modules
make[1]: Entering directory '/usr/src/linux-headers-3.19.0-16-generic'
  CC [M]  /home/jonathan/rtl8812AU_8821AU_linux/os_dep/linux/ioctl_cfg80211.o
/home/jonathan/rtl8812AU_8821AU_linux/os_dep/linux/ioctl_cfg80211.c: In function ‘cfg80211_rtw_add_key’:
/home/jonathan/rtl8812AU_8821AU_linux/os_dep/linux/ioctl_cfg80211.c:1250:35: warning: passing argument 2 of ‘_rtw_memcpy’ discards ‘const’ qualifier from pointer target type
   _rtw_memcpy(param->u.crypt.seq, params->seq, params->seq_len);
                                   ^
In file included from /home/jonathan/rtl8812AU_8821AU_linux/include/drv_types.h:32:0,
                 from /home/jonathan/rtl8812AU_8821AU_linux/os_dep/linux/ioctl_cfg80211.c:22:
/home/jonathan/rtl8812AU_8821AU_linux/include/osdep_service.h:167:13: note: expected ‘void *’ but argument is of type ‘const u8 *’
 extern void _rtw_memcpy(void* dec, void* sour, u32 sz);
             ^
/home/jonathan/rtl8812AU_8821AU_linux/os_dep/linux/ioctl_cfg80211.c:1256:35: warning: passing argument 2 of ‘_rtw_memcpy’ discards ‘const’ qualifier from pointer target type
   _rtw_memcpy(param->u.crypt.key, params->key, params->key_len);
                                   ^
In file included from /home/jonathan/rtl8812AU_8821AU_linux/include/drv_types.h:32:0,
                 from /home/jonathan/rtl8812AU_8821AU_linux/os_dep/linux/ioctl_cfg80211.c:22:
/home/jonathan/rtl8812AU_8821AU_linux/include/osdep_service.h:167:13: note: expected ‘void *’ but argument is of type ‘const u8 *’
 extern void _rtw_memcpy(void* dec, void* sour, u32 sz);
             ^
/home/jonathan/rtl8812AU_8821AU_linux/os_dep/linux/ioctl_cfg80211.c: In function ‘cfg80211_rtw_connect’:
/home/jonathan/rtl8812AU_8821AU_linux/os_dep/linux/ioctl_cfg80211.c:2550:30: warning: passing argument 2 of ‘_rtw_memcpy’ discards ‘const’ qualifier from pointer target type
  _rtw_memcpy(ndis_ssid.Ssid, sme->ssid, sme->ssid_len);
                              ^
In file included from /home/jonathan/rtl8812AU_8821AU_linux/include/drv_types.h:32:0,
                 from /home/jonathan/rtl8812AU_8821AU_linux/os_dep/linux/ioctl_cfg80211.c:22:
/home/jonathan/rtl8812AU_8821AU_linux/include/osdep_service.h:167:13: note: expected ‘void *’ but argument is of type ‘const u8 *’
 extern void _rtw_memcpy(void* dec, void* sour, u32 sz);
             ^
/home/jonathan/rtl8812AU_8821AU_linux/os_dep/linux/ioctl_cfg80211.c:2587:49: warning: passing argument 2 of ‘_rtw_memcmp’ discards ‘const’ qualifier from pointer target type
    if(_rtw_memcmp(pnetwork->network.MacAddress, sme->bssid, ETH_ALEN) == _FALSE)
                                                 ^
In file included from /home/jonathan/rtl8812AU_8821AU_linux/include/drv_types.h:32:0,
                 from /home/jonathan/rtl8812AU_8821AU_linux/os_dep/linux/ioctl_cfg80211.c:22:
/home/jonathan/rtl8812AU_8821AU_linux/include/osdep_service.h:168:12: note: expected ‘void *’ but argument is of type ‘const u8 *’
 extern int _rtw_memcmp(void *dst, void *src, u32 sz);
            ^
/home/jonathan/rtl8812AU_8821AU_linux/os_dep/linux/ioctl_cfg80211.c:2593:49: warning: passing argument 2 of ‘_rtw_memcmp’ discards ‘const’ qualifier from pointer target type
     || _rtw_memcmp(pnetwork->network.Ssid.Ssid, sme->ssid, sme->ssid_len) == _FALSE
                                                 ^
In file included from /home/jonathan/rtl8812AU_8821AU_linux/include/drv_types.h:32:0,
                 from /home/jonathan/rtl8812AU_8821AU_linux/os_dep/linux/ioctl_cfg80211.c:22:
/home/jonathan/rtl8812AU_8821AU_linux/include/osdep_service.h:168:12: note: expected ‘void *’ but argument is of type ‘const u8 *’
 extern int _rtw_memcmp(void *dst, void *src, u32 sz);
            ^
/home/jonathan/rtl8812AU_8821AU_linux/os_dep/linux/ioctl_cfg80211.c:2601:14: warning: assignment discards ‘const’ qualifier from pointer target type
    src_bssid = sme->bssid;
              ^
/home/jonathan/rtl8812AU_8821AU_linux/os_dep/linux/ioctl_cfg80211.c:2682:42: warning: passing argument 2 of ‘rtw_cfg80211_set_wpa_ie’ discards ‘const’ qualifier from pointer target type
  ret = rtw_cfg80211_set_wpa_ie(padapter, sme->ie, sme->ie_len);
                                          ^
/home/jonathan/rtl8812AU_8821AU_linux/os_dep/linux/ioctl_cfg80211.c:2243:12: note: expected ‘u8 *’ but argument is of type ‘const u8 *’
 static int rtw_cfg80211_set_wpa_ie(_adapter *padapter, u8 *pie, size_t ielen)
            ^
/home/jonathan/rtl8812AU_8821AU_linux/os_dep/linux/ioctl_cfg80211.c: In function ‘cfg80211_rtw_set_pmksa’:
/home/jonathan/rtl8812AU_8821AU_linux/os_dep/linux/ioctl_cfg80211.c:2913:20: warning: passing argument 1 of ‘_rtw_memcmp’ discards ‘const’ qualifier from pointer target type
  if ( _rtw_memcmp( pmksa->bssid, strZeroMacAddress, ETH_ALEN ) == _TRUE )
                    ^
In file included from /home/jonathan/rtl8812AU_8821AU_linux/include/drv_types.h:32:0,
                 from /home/jonathan/rtl8812AU_8821AU_linux/os_dep/linux/ioctl_cfg80211.c:22:
/home/jonathan/rtl8812AU_8821AU_linux/include/osdep_service.h:168:12: note: expected ‘void *’ but argument is of type ‘const u8 *’
 extern int _rtw_memcmp(void *dst, void *src, u32 sz);
            ^
/home/jonathan/rtl8812AU_8821AU_linux/os_dep/linux/ioctl_cfg80211.c:2923:59: warning: passing argument 2 of ‘_rtw_memcmp’ discards ‘const’ qualifier from pointer target type
   if( _rtw_memcmp( psecuritypriv->PMKIDList[index].Bssid, pmksa->bssid, ETH_ALEN) ==_TRUE )
                                                           ^
In file included from /home/jonathan/rtl8812AU_8821AU_linux/include/drv_types.h:32:0,
                 from /home/jonathan/rtl8812AU_8821AU_linux/os_dep/linux/ioctl_cfg80211.c:22:
/home/jonathan/rtl8812AU_8821AU_linux/include/osdep_service.h:168:12: note: expected ‘void *’ but argument is of type ‘const u8 *’
 extern int _rtw_memcmp(void *dst, void *src, u32 sz);
            ^
/home/jonathan/rtl8812AU_8821AU_linux/os_dep/linux/ioctl_cfg80211.c:2927:56: warning: passing argument 2 of ‘_rtw_memcpy’ discards ‘const’ qualifier from pointer target type
    _rtw_memcpy( psecuritypriv->PMKIDList[index].PMKID, pmksa->pmkid, WLAN_PMKID_LEN);
                                                        ^
In file included from /home/jonathan/rtl8812AU_8821AU_linux/include/drv_types.h:32:0,
                 from /home/jonathan/rtl8812AU_8821AU_linux/os_dep/linux/ioctl_cfg80211.c:22:
/home/jonathan/rtl8812AU_8821AU_linux/include/osdep_service.h:167:13: note: expected ‘void *’ but argument is of type ‘const u8 *’
 extern void _rtw_memcpy(void* dec, void* sour, u32 sz);
             ^
/home/jonathan/rtl8812AU_8821AU_linux/os_dep/linux/ioctl_cfg80211.c:2941:74: warning: passing argument 2 of ‘_rtw_memcpy’ discards ‘const’ qualifier from pointer target type
   _rtw_memcpy(psecuritypriv->PMKIDList[psecuritypriv->PMKIDIndex].Bssid, pmksa->bssid, ETH_ALEN);
                                                                          ^
In file included from /home/jonathan/rtl8812AU_8821AU_linux/include/drv_types.h:32:0,
                 from /home/jonathan/rtl8812AU_8821AU_linux/os_dep/linux/ioctl_cfg80211.c:22:
/home/jonathan/rtl8812AU_8821AU_linux/include/osdep_service.h:167:13: note: expected ‘void *’ but argument is of type ‘const u8 *’
 extern void _rtw_memcpy(void* dec, void* sour, u32 sz);
             ^
/home/jonathan/rtl8812AU_8821AU_linux/os_dep/linux/ioctl_cfg80211.c:2942:74: warning: passing argument 2 of ‘_rtw_memcpy’ discards ‘const’ qualifier from pointer target type
   _rtw_memcpy(psecuritypriv->PMKIDList[psecuritypriv->PMKIDIndex].PMKID, pmksa->pmkid, WLAN_PMKID_LEN);
                                                                          ^
In file included from /home/jonathan/rtl8812AU_8821AU_linux/include/drv_types.h:32:0,
                 from /home/jonathan/rtl8812AU_8821AU_linux/os_dep/linux/ioctl_cfg80211.c:22:
/home/jonathan/rtl8812AU_8821AU_linux/include/osdep_service.h:167:13: note: expected ‘void *’ but argument is of type ‘const u8 *’
 extern void _rtw_memcpy(void* dec, void* sour, u32 sz);
             ^
/home/jonathan/rtl8812AU_8821AU_linux/os_dep/linux/ioctl_cfg80211.c: In function ‘cfg80211_rtw_del_pmksa’:
/home/jonathan/rtl8812AU_8821AU_linux/os_dep/linux/ioctl_cfg80211.c:2967:59: warning: passing argument 2 of ‘_rtw_memcmp’ discards ‘const’ qualifier from pointer target type
   if( _rtw_memcmp( psecuritypriv->PMKIDList[index].Bssid, pmksa->bssid, ETH_ALEN) ==_TRUE )
                                                           ^
In file included from /home/jonathan/rtl8812AU_8821AU_linux/include/drv_types.h:32:0,
                 from /home/jonathan/rtl8812AU_8821AU_linux/os_dep/linux/ioctl_cfg80211.c:22:
/home/jonathan/rtl8812AU_8821AU_linux/include/osdep_service.h:168:12: note: expected ‘void *’ but argument is of type ‘const u8 *’
 extern int _rtw_memcmp(void *dst, void *src, u32 sz);
            ^
In file included from /home/jonathan/rtl8812AU_8821AU_linux/include/drv_types.h:141:0,
                 from /home/jonathan/rtl8812AU_8821AU_linux/os_dep/linux/ioctl_cfg80211.c:22:
/home/jonathan/rtl8812AU_8821AU_linux/os_dep/linux/ioctl_cfg80211.c: In function ‘rtw_cfg80211_rx_action_p2p’:
/home/jonathan/rtl8812AU_8821AU_linux/include/ioctl_cfg80211.h:114:71: error: too many arguments to function ‘cfg80211_rx_mgmt’
   #define rtw_cfg80211_rx_mgmt(adapter, freq, sig_dbm, buf, len, gfp) cfg80211_rx_mgmt((adapter)->rtw_wdev, freq, sig_dbm, buf, len, 0, gfp)
                                                                       ^
/home/jonathan/rtl8812AU_8821AU_linux/os_dep/linux/ioctl_cfg80211.c:3883:2: note: in expansion of macro ‘rtw_cfg80211_rx_mgmt’
  rtw_cfg80211_rx_mgmt(padapter, freq, 0, pmgmt_frame, frame_len, GFP_ATOMIC);
  ^
In file included from /home/jonathan/rtl8812AU_8821AU_linux/include/osdep_service_linux.h:76:0,
                 from /home/jonathan/rtl8812AU_8821AU_linux/include/osdep_service.h:41,
                 from /home/jonathan/rtl8812AU_8821AU_linux/include/drv_types.h:32,
                 from /home/jonathan/rtl8812AU_8821AU_linux/os_dep/linux/ioctl_cfg80211.c:22:
include/net/cfg80211.h:4612:6: note: declared here
 bool cfg80211_rx_mgmt(struct wireless_dev *wdev, int freq, int sig_dbm,
      ^
In file included from /home/jonathan/rtl8812AU_8821AU_linux/include/drv_types.h:141:0,
                 from /home/jonathan/rtl8812AU_8821AU_linux/os_dep/linux/ioctl_cfg80211.c:22:
/home/jonathan/rtl8812AU_8821AU_linux/os_dep/linux/ioctl_cfg80211.c: In function ‘rtw_cfg80211_rx_p2p_action_public’:
/home/jonathan/rtl8812AU_8821AU_linux/include/ioctl_cfg80211.h:114:71: error: too many arguments to function ‘cfg80211_rx_mgmt’
   #define rtw_cfg80211_rx_mgmt(adapter, freq, sig_dbm, buf, len, gfp) cfg80211_rx_mgmt((adapter)->rtw_wdev, freq, sig_dbm, buf, len, 0, gfp)
                                                                       ^
/home/jonathan/rtl8812AU_8821AU_linux/os_dep/linux/ioctl_cfg80211.c:3921:2: note: in expansion of macro ‘rtw_cfg80211_rx_mgmt’
  rtw_cfg80211_rx_mgmt(padapter, freq, 0, pmgmt_frame, frame_len, GFP_ATOMIC);
  ^
In file included from /home/jonathan/rtl8812AU_8821AU_linux/include/osdep_service_linux.h:76:0,
                 from /home/jonathan/rtl8812AU_8821AU_linux/include/osdep_service.h:41,
                 from /home/jonathan/rtl8812AU_8821AU_linux/include/drv_types.h:32,
                 from /home/jonathan/rtl8812AU_8821AU_linux/os_dep/linux/ioctl_cfg80211.c:22:
include/net/cfg80211.h:4612:6: note: declared here
 bool cfg80211_rx_mgmt(struct wireless_dev *wdev, int freq, int sig_dbm,
      ^
In file included from /home/jonathan/rtl8812AU_8821AU_linux/include/drv_types.h:141:0,
                 from /home/jonathan/rtl8812AU_8821AU_linux/os_dep/linux/ioctl_cfg80211.c:22:
/home/jonathan/rtl8812AU_8821AU_linux/os_dep/linux/ioctl_cfg80211.c: In function ‘rtw_cfg80211_rx_action’:
/home/jonathan/rtl8812AU_8821AU_linux/include/ioctl_cfg80211.h:114:71: error: too many arguments to function ‘cfg80211_rx_mgmt’
   #define rtw_cfg80211_rx_mgmt(adapter, freq, sig_dbm, buf, len, gfp) cfg80211_rx_mgmt((adapter)->rtw_wdev, freq, sig_dbm, buf, len, 0, gfp)
                                                                       ^
/home/jonathan/rtl8812AU_8821AU_linux/os_dep/linux/ioctl_cfg80211.c:3951:2: note: in expansion of macro ‘rtw_cfg80211_rx_mgmt’
  rtw_cfg80211_rx_mgmt(adapter, freq, 0, frame, frame_len, GFP_ATOMIC);
  ^
In file included from /home/jonathan/rtl8812AU_8821AU_linux/include/osdep_service_linux.h:76:0,
                 from /home/jonathan/rtl8812AU_8821AU_linux/include/osdep_service.h:41,
                 from /home/jonathan/rtl8812AU_8821AU_linux/include/drv_types.h:32,
                 from /home/jonathan/rtl8812AU_8821AU_linux/os_dep/linux/ioctl_cfg80211.c:22:
include/net/cfg80211.h:4612:6: note: declared here
 bool cfg80211_rx_mgmt(struct wireless_dev *wdev, int freq, int sig_dbm,
      ^
/home/jonathan/rtl8812AU_8821AU_linux/os_dep/linux/ioctl_cfg80211.c: At top level:
/home/jonathan/rtl8812AU_8821AU_linux/os_dep/linux/ioctl_cfg80211.c:5041:2: warning: initialization from incompatible pointer type
  .get_station = cfg80211_rtw_get_station,
  ^
/home/jonathan/rtl8812AU_8821AU_linux/os_dep/linux/ioctl_cfg80211.c:5041:2: warning: (near initialization for ‘rtw_cfg80211_ops.get_station’)
/home/jonathan/rtl8812AU_8821AU_linux/os_dep/linux/ioctl_cfg80211.c:5069:2: warning: initialization from incompatible pointer type
  .add_station = cfg80211_rtw_add_station,
  ^
/home/jonathan/rtl8812AU_8821AU_linux/os_dep/linux/ioctl_cfg80211.c:5069:2: warning: (near initialization for ‘rtw_cfg80211_ops.add_station’)
/home/jonathan/rtl8812AU_8821AU_linux/os_dep/linux/ioctl_cfg80211.c:5070:2: warning: initialization from incompatible pointer type
  .del_station = cfg80211_rtw_del_station,
  ^
/home/jonathan/rtl8812AU_8821AU_linux/os_dep/linux/ioctl_cfg80211.c:5070:2: warning: (near initialization for ‘rtw_cfg80211_ops.del_station’)
/home/jonathan/rtl8812AU_8821AU_linux/os_dep/linux/ioctl_cfg80211.c:5071:2: warning: initialization from incompatible pointer type
  .change_station = cfg80211_rtw_change_station,
  ^
/home/jonathan/rtl8812AU_8821AU_linux/os_dep/linux/ioctl_cfg80211.c:5071:2: warning: (near initialization for ‘rtw_cfg80211_ops.change_station’)
/home/jonathan/rtl8812AU_8821AU_linux/os_dep/linux/ioctl_cfg80211.c:5087:2: warning: initialization from incompatible pointer type
  .mgmt_tx = cfg80211_rtw_mgmt_tx,
  ^
/home/jonathan/rtl8812AU_8821AU_linux/os_dep/linux/ioctl_cfg80211.c:5087:2: warning: (near initialization for ‘rtw_cfg80211_ops.mgmt_tx’)
scripts/Makefile.build:257: recipe for target '/home/jonathan/rtl8812AU_8821AU_linux/os_dep/linux/ioctl_cfg80211.o' failed
make[2]: *** [/home/jonathan/rtl8812AU_8821AU_linux/os_dep/linux/ioctl_cfg80211.o] Error 1
Makefile:1394: recipe for target '_module_/home/jonathan/rtl8812AU_8821AU_linux' failed
make[1]: *** [_module_/home/jonathan/rtl8812AU_8821AU_linux] Error 2
make[1]: Leaving directory '/usr/src/linux-headers-3.19.0-16-generic'
Makefile:1040: recipe for target 'modules' failed
make: *** [modules] Error 2

Here is the device info when I enter lsusb (belkin component at the top):

jonathan@pc:~$ lsusb
Bus 003 Device 006: ID 050d:1109 Belkin Components 
Bus 003 Device 002: ID 357d:7788  
Bus 003 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 007 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 006 Device 003: ID 046d:c52b Logitech, Inc. Unifying Receiver
Bus 006 Device 002: ID 0a5c:21e8 Broadcom Corp. BCM20702A0 Bluetooth 4.0
Bus 006 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 005 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 004 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 001 Device 002: ID 2109:3431  
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
jonathan@pc:~$

Also, I am currently running Ubuntu 15.04. I am new to Linux so please excuse me if I have left out an vital information or this post is not in an acceptable format. Please let me know if there is any more information you need.

  • Pleasure :) Welcome to Ask Ubuntu! As you're new, the help center and the tour will help you quickly learn the ways! I look forward to seeing some nice posts from you. – Tim May 14 '15 at 20:14
3

Please try this package instead:

git clone https://github.com/abperiasamy/rtl8812AU_8821AU_linux.git
cd rtl8812AU_8821AU_linux
make
sudo make install
sudo depmod -a
sudo modprobe 8812au

It makes for me on my 3.19.0-16 kernel with warnings but no errors.

| improve this answer | |
  • Thank you for your help! It seems to have worked! I can now use the wireless adapter. Quick question. Will the adapter work automatically every time I reboot or turn the computer on? Are there additional steps to get this to happen? Thank you for all your help! – Jonathan Morales May 14 '15 at 18:13
  • It should work until a later kernel is installed, then recompile as above and reboot. – chili555 May 14 '15 at 19:07
  • Thank you so much! I rebooted and the adapter still works. Really appreciate your help! – Jonathan Morales May 14 '15 at 20:04
  • note, you need some packages: sudo apt-get install build-essential linux-headers-generic git to use make. And if you want to recompile it later, you need to do make clean before make again – rubo77 Jul 22 '15 at 9:18

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

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