Please help me install the USB wireless LAN driver~ (A3000U-Chipset:RTL88x2bu)

hello~
I’m trying to install wireless LAN for USB, but I can’t install the driver, so I’m asking for help.

Rocky linux 8.5 (4.18.0-348.20.1.el8_5.x86_64)
Model: A3000U (RTL-88x2bu chipset)

The top line below is the command and the line below is the output, but the error comes out on the second last line.
I tried downloading another version from GitHub, but the error output is the same… I think it’s related to the kernel… ㅠㅠ

root@vxfhost rtl88x2bu-git]# dkms build -m rtl88x2bu -v ${VER}

root@vxfhost rtl88x2bu-git]# dkms build -m rtl88x2bu -v ${VER}

Sign command: /lib/modules/4.18.0-348.20.1.el8_5.x86_64/build/scripts/sign-file

Signing key: /var/lib/dkms/mok.key

Public certificate (MOK): /var/lib/dkms/mok.pub

Building module:

Cleaning build area…

‘make’ -j32 KVER=4.18.0-348.20.1.el8_5.x86_64 KSRC=/lib/modules/4.18.0-348.20.1.el8_5.x86_64/build…(bad exit status: 2)

Error! Bad return status for module build on kernel: 4.18.0-348.20.1.el8_5.x86_64 (x86_64)

Consult /var/lib/dkms/rtl88x2bu/git/build/make.log for more information.

What action will be required?

Below is the contents of the make.log file

DKMS make.log for rtl88x2bu-git for kernel 4.18.0-348.20.1.el8_5.x86_64 (x86_64)
Wed Jun 28 02:23:57 KST 2023
make ARCH=x86_64 CROSS_COMPILE= -C /lib/modules/4.18.0-348.20.1.el8_5.x86_64/build M=/var/lib/dkms/rtl88x2bu/git/build  modules
make[1]: Entering directory '/usr/src/kernels/4.18.0-348.20.1.el8_5.x86_64'
  CC [M]  /var/lib/dkms/rtl88x2bu/git/build/core/rtw_cmd.o
  CC [M]  /var/lib/dkms/rtl88x2bu/git/build/core/rtw_security.o
  CC [M]  /var/lib/dkms/rtl88x2bu/git/build/core/rtw_debug.o
  CC [M]  /var/lib/dkms/rtl88x2bu/git/build/core/rtw_io.o
  CC [M]  /var/lib/dkms/rtl88x2bu/git/build/core/rtw_ioctl_query.o
  CC [M]  /var/lib/dkms/rtl88x2bu/git/build/core/rtw_ioctl_set.o
  CC [M]  /var/lib/dkms/rtl88x2bu/git/build/core/rtw_ieee80211.o
  CC [M]  /var/lib/dkms/rtl88x2bu/git/build/core/rtw_mlme.o
  CC [M]  /var/lib/dkms/rtl88x2bu/git/build/core/rtw_mlme_ext.o
  CC [M]  /var/lib/dkms/rtl88x2bu/git/build/core/rtw_mi.o
  CC [M]  /var/lib/dkms/rtl88x2bu/git/build/core/rtw_wlan_util.o
  CC [M]  /var/lib/dkms/rtl88x2bu/git/build/core/rtw_vht.o
  CC [M]  /var/lib/dkms/rtl88x2bu/git/build/core/rtw_pwrctrl.o
  CC [M]  /var/lib/dkms/rtl88x2bu/git/build/core/rtw_rf.o
  CC [M]  /var/lib/dkms/rtl88x2bu/git/build/core/rtw_chplan.o
  CC [M]  /var/lib/dkms/rtl88x2bu/git/build/core/monitor/rtw_radiotap.o
  CC [M]  /var/lib/dkms/rtl88x2bu/git/build/core/rtw_recv.o
  CC [M]  /var/lib/dkms/rtl88x2bu/git/build/core/rtw_sta_mgt.o
  CC [M]  /var/lib/dkms/rtl88x2bu/git/build/core/rtw_ap.o
  CC [M]  /var/lib/dkms/rtl88x2bu/git/build/core/wds/rtw_wds.o
  CC [M]  /var/lib/dkms/rtl88x2bu/git/build/core/mesh/rtw_mesh.o
  CC [M]  /var/lib/dkms/rtl88x2bu/git/build/core/mesh/rtw_mesh_pathtbl.o
  CC [M]  /var/lib/dkms/rtl88x2bu/git/build/core/mesh/rtw_mesh_hwmp.o
  CC [M]  /var/lib/dkms/rtl88x2bu/git/build/core/rtw_xmit.o
  CC [M]  /var/lib/dkms/rtl88x2bu/git/build/core/rtw_p2p.o
  CC [M]  /var/lib/dkms/rtl88x2bu/git/build/core/rtw_rson.o
  CC [M]  /var/lib/dkms/rtl88x2bu/git/build/core/rtw_tdls.o
  CC [M]  /var/lib/dkms/rtl88x2bu/git/build/core/rtw_br_ext.o
  CC [M]  /var/lib/dkms/rtl88x2bu/git/build/core/rtw_iol.o
  CC [M]  /var/lib/dkms/rtl88x2bu/git/build/core/rtw_sreset.o
  CC [M]  /var/lib/dkms/rtl88x2bu/git/build/core/rtw_btcoex_wifionly.o
  CC [M]  /var/lib/dkms/rtl88x2bu/git/build/core/rtw_btcoex.o
  CC [M]  /var/lib/dkms/rtl88x2bu/git/build/core/rtw_beamforming.o
  CC [M]  /var/lib/dkms/rtl88x2bu/git/build/core/rtw_odm.o
  CC [M]  /var/lib/dkms/rtl88x2bu/git/build/core/rtw_rm.o
  CC [M]  /var/lib/dkms/rtl88x2bu/git/build/core/rtw_rm_fsm.o
  CC [M]  /var/lib/dkms/rtl88x2bu/git/build/core/rtw_ft.o
  CC [M]  /var/lib/dkms/rtl88x2bu/git/build/core/rtw_wnm.o
  CC [M]  /var/lib/dkms/rtl88x2bu/git/build/core/rtw_mbo.o
  CC [M]  /var/lib/dkms/rtl88x2bu/git/build/core/rtw_rm_util.o
  CC [M]  /var/lib/dkms/rtl88x2bu/git/build/core/efuse/rtw_efuse.o
  CC [M]  /var/lib/dkms/rtl88x2bu/git/build/core/rtw_roch.o
  CC [M]  /var/lib/dkms/rtl88x2bu/git/build/core/crypto/aes-internal.o
  CC [M]  /var/lib/dkms/rtl88x2bu/git/build/core/crypto/aes-internal-enc.o
  CC [M]  /var/lib/dkms/rtl88x2bu/git/build/core/crypto/aes-gcm.o
  CC [M]  /var/lib/dkms/rtl88x2bu/git/build/core/crypto/aes-ccm.o
  CC [M]  /var/lib/dkms/rtl88x2bu/git/build/core/crypto/aes-omac1.o
  CC [M]  /var/lib/dkms/rtl88x2bu/git/build/core/crypto/ccmp.o
  CC [M]  /var/lib/dkms/rtl88x2bu/git/build/core/crypto/gcmp.o
  CC [M]  /var/lib/dkms/rtl88x2bu/git/build/core/crypto/aes-siv.o
  CC [M]  /var/lib/dkms/rtl88x2bu/git/build/core/crypto/aes-ctr.o
  CC [M]  /var/lib/dkms/rtl88x2bu/git/build/core/crypto/sha256-internal.o
  CC [M]  /var/lib/dkms/rtl88x2bu/git/build/core/crypto/sha256.o
  CC [M]  /var/lib/dkms/rtl88x2bu/git/build/core/crypto/sha256-prf.o
  CC [M]  /var/lib/dkms/rtl88x2bu/git/build/core/crypto/rtw_crypto_wrap.o
  CC [M]  /var/lib/dkms/rtl88x2bu/git/build/core/rtw_swcrypto.o
  CC [M]  /var/lib/dkms/rtl88x2bu/git/build/os_dep/osdep_service.o
  CC [M]  /var/lib/dkms/rtl88x2bu/git/build/os_dep/linux/os_intfs.o
  CC [M]  /var/lib/dkms/rtl88x2bu/git/build/os_dep/linux/usb_intf.o
  CC [M]  /var/lib/dkms/rtl88x2bu/git/build/os_dep/linux/usb_ops_linux.o
  CC [M]  /var/lib/dkms/rtl88x2bu/git/build/os_dep/linux/ioctl_linux.o
  CC [M]  /var/lib/dkms/rtl88x2bu/git/build/os_dep/linux/xmit_linux.o
  CC [M]  /var/lib/dkms/rtl88x2bu/git/build/os_dep/linux/mlme_linux.o
  CC [M]  /var/lib/dkms/rtl88x2bu/git/build/os_dep/linux/recv_linux.o
  CC [M]  /var/lib/dkms/rtl88x2bu/git/build/os_dep/linux/ioctl_cfg80211.o
  CC [M]  /var/lib/dkms/rtl88x2bu/git/build/os_dep/linux/rtw_cfgvendor.o
  CC [M]  /var/lib/dkms/rtl88x2bu/git/build/os_dep/linux/wifi_regd.o
  CC [M]  /var/lib/dkms/rtl88x2bu/git/build/os_dep/linux/rtw_android.o
  CC [M]  /var/lib/dkms/rtl88x2bu/git/build/os_dep/linux/rtw_proc.o
  CC [M]  /var/lib/dkms/rtl88x2bu/git/build/os_dep/linux/nlrtw.o
  CC [M]  /var/lib/dkms/rtl88x2bu/git/build/os_dep/linux/rtw_rhashtable.o
  CC [M]  /var/lib/dkms/rtl88x2bu/git/build/os_dep/linux/ioctl_mp.o
  CC [M]  /var/lib/dkms/rtl88x2bu/git/build/hal/hal_intf.o
  CC [M]  /var/lib/dkms/rtl88x2bu/git/build/hal/hal_com.o
  CC [M]  /var/lib/dkms/rtl88x2bu/git/build/hal/hal_com_phycfg.o
  CC [M]  /var/lib/dkms/rtl88x2bu/git/build/hal/hal_phy.o
  CC [M]  /var/lib/dkms/rtl88x2bu/git/build/hal/hal_dm.o
  CC [M]  /var/lib/dkms/rtl88x2bu/git/build/hal/hal_dm_acs.o
  CC [M]  /var/lib/dkms/rtl88x2bu/git/build/hal/hal_btcoex_wifionly.o
  CC [M]  /var/lib/dkms/rtl88x2bu/git/build/hal/hal_btcoex.o
  CC [M]  /var/lib/dkms/rtl88x2bu/git/build/hal/hal_mp.o
  CC [M]  /var/lib/dkms/rtl88x2bu/git/build/hal/hal_mcc.o
  CC [M]  /var/lib/dkms/rtl88x2bu/git/build/hal/hal_hci/hal_usb.o
  CC [M]  /var/lib/dkms/rtl88x2bu/git/build/hal/led/hal_led.o
/var/lib/dkms/rtl88x2bu/git/build/os_dep/linux/os_intfs.c:1862:22: error: initialization of ‘u16 (*)(struct net_device *, struct sk_buff *, struct net_device *, u16 (*)(struct net_device *, struct sk_buff *, struct net_device *))’ {aka ‘short unsigned int (*)(struct net_device *, struct sk_buff *, struct net_device *, short unsigned int (*)(struct net_device *, struct sk_buff *, struct net_device *))’} from incompatible pointer type ‘u16 (*)(struct net_device *, struct sk_buff *, void *, u16 (*)(struct net_device *, struct sk_buff *, struct net_device *))’ {aka ‘short unsigned int (*)(struct net_device *, struct sk_buff *, void *, short unsigned int (*)(struct net_device *, struct sk_buff *, struct net_device *))’} [-Werror=incompatible-pointer-types]
  .ndo_select_queue = rtw_select_queue,
                      ^~~~~~~~~~~~~~~~
/var/lib/dkms/rtl88x2bu/git/build/os_dep/linux/os_intfs.c:1862:22: note: (near initialization for ‘rtw_netdev_ops.ndo_select_queue’)
  CC [M]  /var/lib/dkms/rtl88x2bu/git/build/hal/led/hal_usb_led.o
  CC [M]  /var/lib/dkms/rtl88x2bu/git/build/hal/rtl8822b/rtl8822b_halinit.o
  CC [M]  /var/lib/dkms/rtl88x2bu/git/build/hal/rtl8822b/rtl8822b_mac.o
/var/lib/dkms/rtl88x2bu/git/build/os_dep/linux/rtw_android.c: In function ‘rtw_android_priv_cmd’:
/var/lib/dkms/rtl88x2bu/git/build/os_dep/linux/rtw_android.c:669:62: error: macro "access_ok" passed 3 arguments, but takes just 2
  if (!access_ok(VERIFY_READ, priv_cmd.buf, priv_cmd.total_len)) {
                                                              ^
/var/lib/dkms/rtl88x2bu/git/build/os_dep/linux/rtw_android.c:669:7: error: ‘access_ok’ undeclared (first use in this function)
  if (!access_ok(VERIFY_READ, priv_cmd.buf, priv_cmd.total_len)) {
       ^~~~~~~~~
/var/lib/dkms/rtl88x2bu/git/build/os_dep/linux/rtw_android.c:669:7: note: each undeclared identifier is reported only once for each function it appears in
make[2]: *** [scripts/Makefile.build:316: /var/lib/dkms/rtl88x2bu/git/build/os_dep/linux/rtw_android.o] Error 1
make[2]: *** Waiting for unfinished jobs....
/var/lib/dkms/rtl88x2bu/git/build/os_dep/linux/ioctl_cfg80211.c: In function ‘rtw_cfg80211_ch_switch_notify’:
/var/lib/dkms/rtl88x2bu/git/build/os_dep/linux/ioctl_cfg80211.c:473:3: error: too few arguments to function ‘cfg80211_ch_switch_started_notify’
   cfg80211_ch_switch_started_notify(adapter->pnetdev, &chdef, 0);
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from /var/lib/dkms/rtl88x2bu/git/build/include/osdep_service_linux.h:98,
                 from /var/lib/dkms/rtl88x2bu/git/build/include/osdep_service.h:54,
                 from /var/lib/dkms/rtl88x2bu/git/build/include/drv_types.h:27,
                 from /var/lib/dkms/rtl88x2bu/git/build/os_dep/linux/ioctl_cfg80211.c:17:
./include/net/cfg80211.h:7673:6: note: declared here
 void cfg80211_ch_switch_started_notify(struct net_device *dev,
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/var/lib/dkms/rtl88x2bu/git/build/os_dep/linux/ioctl_cfg80211.c: At top level:
/var/lib/dkms/rtl88x2bu/git/build/os_dep/linux/ioctl_cfg80211.c:10511:3: error: ‘struct cfg80211_ops’ has no member named ‘mgmt_frame_register’
  .mgmt_frame_register = cfg80211_rtw_mgmt_frame_register,
   ^~~~~~~~~~~~~~~~~~~
/var/lib/dkms/rtl88x2bu/git/build/os_dep/linux/ioctl_cfg80211.c:10511:25: error: initialization of ‘int (*)(struct wiphy *, struct wireless_dev *, u64)’ {aka ‘int (*)(struct wiphy *, struct wireless_dev *, long long unsigned int)’} from incompatible pointer type ‘void (*)(struct wiphy *, struct wireless_dev *, u16,  bool)’ {aka ‘void (*)(struct wiphy *, struct wireless_dev *, short unsigned int,  _Bool)’} [-Werror=incompatible-pointer-types]
  .mgmt_frame_register = cfg80211_rtw_mgmt_frame_register,
                         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/var/lib/dkms/rtl88x2bu/git/build/os_dep/linux/ioctl_cfg80211.c:10511:25: note: (near initialization for ‘rtw_cfg80211_ops.mgmt_tx_cancel_wait’)
cc1: some warnings being treated as errors
make[2]: *** [scripts/Makefile.build:315: /var/lib/dkms/rtl88x2bu/git/build/os_dep/linux/ioctl_cfg80211.o] Error 1
cc1: some warnings being treated as errors
make[2]: *** [scripts/Makefile.build:315: /var/lib/dkms/rtl88x2bu/git/build/os_dep/linux/os_intfs.o] Error 1
make[1]: *** [Makefile:1571: _module_/var/lib/dkms/rtl88x2bu/git/build] Error 2
make[1]: Leaving directory '/usr/src/kernels/4.18.0-348.20.1.el8_5.x86_64'
make: *** [Makefile:2470: modules] Error 2

I don’t know which source code at GitHub was used but it apparently is not compatible with kernel 4.18.

You may want to look in farribeiro/rtl88x2bu-kmod Copr . It appears that the code can be compiled for EPEL-8.