Nie jesteś zalogowany.
Jeśli nie posiadasz konta, zarejestruj je już teraz! Pozwoli Ci ono w pełni korzystać z naszego serwisu. Spamerom dziękujemy!
Prosimy o pomoc dla małej Julki — przekaż 1% podatku na Fundacji Dzieciom zdazyć z Pomocą.
Więcej informacji na dug.net.pl/pomagamy/.
Mam kartę wifi, do której nie ma modułów w kenrelu i te trzeba sobie skompilować i załadować ręcznie. Źródła są na https://github.com/abperiasamy/rtl8812AU_8821AU_linux.git . Sam sterownik się buduje bez problemu i również tak samo działa. Niemniej jednak, przy aktualizacji kernela ciągle trzeba ten moduł ręcznie budować i pomyślałem sobie, że zautomatyzuję cały ten proces.
Pobrałem zatem źródła:
# cd /usr/src/ # git clone https://github.com/abperiasamy/rtl8812AU_8821AU_linux.git # mv rtl8812AU_8821AU_linux/ 8812au-4.2.2_7502.20130517
Na necie pisali by zmienić nazwę katalogu na nazwa-wersja. Potem wejść do tego katalogu i stworzyć tam plik dkms.conf o mniej więcej poniższej treści:
root:/usr/src/8812au-4.2.2_7502.20130517# cat dkms.conf PACKAGE_NAME="8812au" PACKAGE_VERSION="4.2.2_7502.20130517" CLEAN="make clean" BUILT_MODULE_NAME[0]="8812au" DEST_MODULE_LOCATION[0]="/kernel/drivers/net/wireless/" AUTOINSTALL="yes"
Potem dodać moduł do drzewa DKMS:
root:/usr/src/8812au-4.2.2_7502.20130517# dkms add -m 8812au -v 4.2.2_7502.20130517 Creating symlink /var/lib/dkms/8812au/4.2.2_7502.20130517/source -> /usr/src/8812au-4.2.2_7502.20130517 DKMS: add completed.
I jak widać został dodany:
root:/usr/src/8812au-4.2.2_7502.20130517# dkms status 8812au, 4.2.2_7502.20130517: added sysdig, 0.1.89, 3.16.0-4-amd64, x86_64: installed virtualbox, 4.3.18, 3.16.0-4-amd64, x86_64: installed xtables-addons, 2.6, 3.16.0-4-amd64, x86_64: installed
I do tego momentu wszystko jest ok ale to przecie jeszcze nie koniec, bo ten moduł trzeba zbudować i zainstalować ale przy budowaniu dostaje taki komunikat:
root:/usr/src/8812au-4.2.2_7502.20130517# dkms build -m 8812au -v 4.2.2_7502.20130517 Kernel preparation unnecessary for this kernel. Skipping... Building module: cleaning build area.... make KERNELRELEASE=3.16.0-4-amd64 -C /lib/modules/3.16.0-4-amd64/build M=/var/lib/dkms/8812au/4.2.2_7502.20130517/build.... Error! Build of 8812au.ko failed for: 3.16.0-4-amd64 (x86_64) Consult the make.log in the build directory /var/lib/dkms/8812au/4.2.2_7502.20130517/build/ for more information.
A w tym pliku, co niby ma być więcej info na temat tego co się schrzaniło, jest tylko to:
root:/usr/src/8812au-4.2.2_7502.20130517# cat /var/lib/dkms/8812au/4.2.2_7502.20130517/build/make.log DKMS make.log for 8812au-4.2.2_7502.20130517 for kernel 3.16.0-4-amd64 (x86_64) Sat Dec 13 07:44:36 CET 2014 make: Entering directory '/usr/src/linux-headers-3.16.0-4-amd64' make[1]: Entering directory `/usr/src/linux-headers-3.16.0-4-amd64' LD /var/lib/dkms/8812au/4.2.2_7502.20130517/build/built-in.o Building modules, stage 2. MODPOST 0 modules make: Leaving directory '/usr/src/linux-headers-3.16.0-4-amd64'
Zatem jak zbudować ten moduł?
tak na marginesie jeszcze -- wszystkie informacje na temat nazwy modułu, jego wersji i lokalizacji wyciągnąłem z info o module ręcznie już zainstalowanym:
root:/usr/src/8812au-4.2.2_7502.20130517# modinfo 8812au filename: /lib/modules/3.16.0-4-amd64/kernel/drivers/net/wireless/8812au.ko version: v4.2.2_7502.20130517 author: Realtek Semiconductor Corp. description: Realtek Wireless Lan Driver license: GPL srcversion: 1429BC01BA786EAE565F99B alias: usb:v0411p0242d*dc*dsc*dp*ic*isc*ip*in* alias: usb:v0846p9052d*dc*dsc*dp*ic*isc*ip*in* alias: usb:v2001p3314d*dc*dsc*dp*ic*isc*ip*in* alias: usb:v7392pA812d*dc*dsc*dp*ic*isc*ip*in* alias: usb:v7392pA811d*dc*dsc*dp*ic*isc*ip*in* alias: usb:v0BDAp8822d*dc*dsc*dp*ic*isc*ip*in* alias: usb:v0BDAp0821d*dc*dsc*dp*ic*isc*ip*in* alias: usb:v0BDAp0811d*dc*dsc*dp*ic*isc*ip*in* alias: usb:v2357p0101d*dc*dsc*dp*ic*isc*ip*in* alias: usb:v13B1p003Fd*dc*dsc*dp*ic*isc*ip*in* alias: usb:v20F4p805Bd*dc*dsc*dp*ic*isc*ip*in* alias: usb:v2001p3316d*dc*dsc*dp*ic*isc*ip*in* alias: usb:v2001p3315d*dc*dsc*dp*ic*isc*ip*in* alias: usb:v07B8p8812d*dc*dsc*dp*ic*isc*ip*in* alias: usb:v2019pAB30d*dc*dsc*dp*ic*isc*ip*in* alias: usb:v1740p0100d*dc*dsc*dp*ic*isc*ip*in* alias: usb:v1058p0632d*dc*dsc*dp*ic*isc*ip*in* alias: usb:v2001p3313d*dc*dsc*dp*ic*isc*ip*in* alias: usb:v0586p3426d*dc*dsc*dp*ic*isc*ip*in* alias: usb:v0E66p0022d*dc*dsc*dp*ic*isc*ip*in* alias: usb:v0B05p17D2d*dc*dsc*dp*ic*isc*ip*in* alias: usb:v0409p0408d*dc*dsc*dp*ic*isc*ip*in* alias: usb:v0789p016Ed*dc*dsc*dp*ic*isc*ip*in* alias: usb:v04BBp0952d*dc*dsc*dp*ic*isc*ip*in* alias: usb:v0DF6p0074d*dc*dsc*dp*ic*isc*ip*in* alias: usb:v7392pA822d*dc*dsc*dp*ic*isc*ip*in* alias: usb:v2001p330Ed*dc*dsc*dp*ic*isc*ip*in* alias: usb:v050Dp1109d*dc*dsc*dp*ic*isc*ip*in* alias: usb:v0BDAp881Cd*dc*dsc*dp*ic*isc*ip*in* alias: usb:v0BDAp881Bd*dc*dsc*dp*ic*isc*ip*in* alias: usb:v0BDAp881Ad*dc*dsc*dp*ic*isc*ip*in* alias: usb:v0BDAp8812d*dc*dsc*dp*ic*isc*ip*in* depends: cfg80211,usbcore vermagic: 3.16.0-4-amd64 SMP mod_unload modversions parm: rtw_ips_mode:The default IPS mode (int) parm: rtw_regulatory_id:int parm: ifname:The default name to allocate for first interface (charp) parm: if2name:The default name to allocate for second interface (charp) parm: rtw_initmac:charp parm: rtw_channel_plan:int parm: rtw_chip_version:int parm: rtw_rfintfs:int parm: rtw_lbkmode:int parm: rtw_network_mode:int parm: rtw_channel:int parm: rtw_mp_mode:int parm: rtw_wmm_enable:int parm: rtw_vrtl_carrier_sense:int parm: rtw_vcs_type:int parm: rtw_busy_thresh:int parm: rtw_ht_enable:int parm: rtw_bw_mode:int parm: rtw_ampdu_enable:int parm: rtw_rx_stbc:int parm: rtw_ampdu_amsdu:int parm: rtw_vht_enable:int parm: rtw_lowrate_two_xmit:int parm: rtw_rf_config:int parm: rtw_power_mgnt:int parm: rtw_smart_ps:int parm: rtw_low_power:int parm: rtw_wifi_spec:int parm: rtw_antdiv_cfg:int parm: rtw_antdiv_type:int parm: rtw_enusbss:int parm: rtw_hwpdn_mode:int parm: rtw_hwpwrp_detect:int parm: rtw_hw_wps_pbc:int parm: rtw_max_roaming_times:The max roaming times to try (uint) parm: rtw_mc2u_disable:int parm: rtw_80211d:Enable 802.11d mechanism (int) parm: rtw_notch_filter:0:Disable, 1:Enable, 2:Enable only for P2P (uint)
Jakby kogoś interesował log z ręcznego budowania modułu, to jest on tutaj:
root:/usr/src/8812au-4.2.2_7502.20130517# make clean cd hal/OUTSRC/ ; rm -fr */*.mod.c */*.mod */*.o */.*.cmd */*.ko cd hal/OUTSRC/ ; rm -fr *.mod.c *.mod *.o .*.cmd *.ko cd hal/led ; rm -fr *.mod.c *.mod *.o .*.cmd *.ko cd hal ; rm -fr */*/*.mod.c */*/*.mod */*/*.o */*/.*.cmd */*/*.ko cd hal ; rm -fr */*.mod.c */*.mod */*.o */.*.cmd */*.ko cd hal ; rm -fr *.mod.c *.mod *.o .*.cmd *.ko cd core/efuse ; rm -fr *.mod.c *.mod *.o .*.cmd *.ko cd core ; rm -fr *.mod.c *.mod *.o .*.cmd *.ko cd os_dep/linux ; rm -fr *.mod.c *.mod *.o .*.cmd *.ko cd os_dep ; rm -fr *.mod.c *.mod *.o .*.cmd *.ko rm -fr Module.symvers ; rm -fr Module.markers ; rm -fr modules.order rm -fr *.mod.c *.mod *.o .*.cmd *.ko *~ rm -fr .tmp_versions root:/usr/src/8812au-4.2.2_7502.20130517# make make ARCH=x86_64 CROSS_COMPILE= -C /lib/modules/3.16.0-4-amd64/build M=/usr/src/8812au-4.2.2_7502.20130517 modules make[1]: Entering directory '/usr/src/linux-headers-3.16.0-4-amd64' Makefile:10: *** mixed implicit and normal rules: deprecated syntax make[1]: Entering directory `/usr/src/linux-headers-3.16.0-4-amd64' CC [M] /usr/src/8812au-4.2.2_7502.20130517/core/rtw_cmd.o CC [M] /usr/src/8812au-4.2.2_7502.20130517/core/rtw_security.o CC [M] /usr/src/8812au-4.2.2_7502.20130517/core/rtw_debug.o CC [M] /usr/src/8812au-4.2.2_7502.20130517/core/rtw_io.o CC [M] /usr/src/8812au-4.2.2_7502.20130517/core/rtw_ioctl_query.o CC [M] /usr/src/8812au-4.2.2_7502.20130517/core/rtw_ioctl_set.o CC [M] /usr/src/8812au-4.2.2_7502.20130517/core/rtw_ieee80211.o CC [M] /usr/src/8812au-4.2.2_7502.20130517/core/rtw_mlme.o CC [M] /usr/src/8812au-4.2.2_7502.20130517/core/rtw_mlme_ext.o CC [M] /usr/src/8812au-4.2.2_7502.20130517/core/rtw_wlan_util.o CC [M] /usr/src/8812au-4.2.2_7502.20130517/core/rtw_vht.o CC [M] /usr/src/8812au-4.2.2_7502.20130517/core/rtw_pwrctrl.o CC [M] /usr/src/8812au-4.2.2_7502.20130517/core/rtw_rf.o CC [M] /usr/src/8812au-4.2.2_7502.20130517/core/rtw_recv.o CC [M] /usr/src/8812au-4.2.2_7502.20130517/core/rtw_sta_mgt.o CC [M] /usr/src/8812au-4.2.2_7502.20130517/core/rtw_ap.o CC [M] /usr/src/8812au-4.2.2_7502.20130517/core/rtw_xmit.o CC [M] /usr/src/8812au-4.2.2_7502.20130517/core/rtw_p2p.o CC [M] /usr/src/8812au-4.2.2_7502.20130517/core/rtw_tdls.o CC [M] /usr/src/8812au-4.2.2_7502.20130517/core/rtw_br_ext.o CC [M] /usr/src/8812au-4.2.2_7502.20130517/core/rtw_iol.o CC [M] /usr/src/8812au-4.2.2_7502.20130517/core/rtw_sreset.o CC [M] /usr/src/8812au-4.2.2_7502.20130517/core/efuse/rtw_efuse.o CC [M] /usr/src/8812au-4.2.2_7502.20130517/os_dep/osdep_service.o CC [M] /usr/src/8812au-4.2.2_7502.20130517/os_dep/linux/os_intfs.o /usr/src/8812au-4.2.2_7502.20130517/os_dep/linux/os_intfs.c:1695:2: warning: initialization from incompatible pointer type [enabled by default] .ndo_select_queue = rtw_select_queue, ^ /usr/src/8812au-4.2.2_7502.20130517/os_dep/linux/os_intfs.c:1695:2: warning: (near initialization for ‘rtw_netdev_ops.ndo_select_queue’) [enabled by default] CC [M] /usr/src/8812au-4.2.2_7502.20130517/os_dep/linux/usb_intf.o CC [M] /usr/src/8812au-4.2.2_7502.20130517/os_dep/linux/usb_ops_linux.o CC [M] /usr/src/8812au-4.2.2_7502.20130517/os_dep/linux/ioctl_linux.o /usr/src/8812au-4.2.2_7502.20130517/os_dep/linux/ioctl_linux.c: In function ‘rtw_mp_efuse_get’: /usr/src/8812au-4.2.2_7502.20130517/os_dep/linux/ioctl_linux.c:8887:65: warning: iteration 16u invokes undefined behavior [-Waggressive-loop-optimizations] sprintf(extra, "%s%02X ", extra, pEfuseHal->fakeEfuseInitMap[i+j]); ^ /usr/src/8812au-4.2.2_7502.20130517/os_dep/linux/ioctl_linux.c:8875:3: note: containing loop for (i = 0; i < EFUSE_MAP_SIZE; i += 16) ^ /usr/src/8812au-4.2.2_7502.20130517/os_dep/linux/ioctl_linux.c:9307:69: warning: iteration 16u invokes undefined behavior [-Waggressive-loop-optimizations] sprintf(extra, "%s %02X", extra, pEfuseHal->fakeEfuseModifiedMap[i+j]); ^ /usr/src/8812au-4.2.2_7502.20130517/os_dep/linux/ioctl_linux.c:9295:3: note: containing loop for (i=0; i<EFUSE_MAP_SIZE; i+=16) ^ CC [M] /usr/src/8812au-4.2.2_7502.20130517/os_dep/linux/xmit_linux.o CC [M] /usr/src/8812au-4.2.2_7502.20130517/os_dep/linux/mlme_linux.o CC [M] /usr/src/8812au-4.2.2_7502.20130517/os_dep/linux/recv_linux.o CC [M] /usr/src/8812au-4.2.2_7502.20130517/os_dep/linux/ioctl_cfg80211.o /usr/src/8812au-4.2.2_7502.20130517/os_dep/linux/ioctl_cfg80211.c: In function ‘cfg80211_rtw_add_key’: /usr/src/8812au-4.2.2_7502.20130517/os_dep/linux/ioctl_cfg80211.c:1250:3: warning: passing argument 2 of ‘_rtw_memcpy’ discards ‘const’ qualifier from pointer target type [enabled by default] _rtw_memcpy(param->u.crypt.seq, params->seq, params->seq_len); ^ In file included from /usr/src/8812au-4.2.2_7502.20130517/include/drv_types.h:32:0, from /usr/src/8812au-4.2.2_7502.20130517/os_dep/linux/ioctl_cfg80211.c:22: /usr/src/8812au-4.2.2_7502.20130517/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); ^ /usr/src/8812au-4.2.2_7502.20130517/os_dep/linux/ioctl_cfg80211.c:1256:3: warning: passing argument 2 of ‘_rtw_memcpy’ discards ‘const’ qualifier from pointer target type [enabled by default] _rtw_memcpy(param->u.crypt.key, params->key, params->key_len); ^ In file included from /usr/src/8812au-4.2.2_7502.20130517/include/drv_types.h:32:0, from /usr/src/8812au-4.2.2_7502.20130517/os_dep/linux/ioctl_cfg80211.c:22: /usr/src/8812au-4.2.2_7502.20130517/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); ^ /usr/src/8812au-4.2.2_7502.20130517/os_dep/linux/ioctl_cfg80211.c: In function ‘cfg80211_rtw_connect’: /usr/src/8812au-4.2.2_7502.20130517/os_dep/linux/ioctl_cfg80211.c:2550:2: warning: passing argument 2 of ‘_rtw_memcpy’ discards ‘const’ qualifier from pointer target type [enabled by default] _rtw_memcpy(ndis_ssid.Ssid, sme->ssid, sme->ssid_len); ^ In file included from /usr/src/8812au-4.2.2_7502.20130517/include/drv_types.h:32:0, from /usr/src/8812au-4.2.2_7502.20130517/os_dep/linux/ioctl_cfg80211.c:22: /usr/src/8812au-4.2.2_7502.20130517/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); ^ /usr/src/8812au-4.2.2_7502.20130517/os_dep/linux/ioctl_cfg80211.c:2587:4: warning: passing argument 2 of ‘_rtw_memcmp’ discards ‘const’ qualifier from pointer target type [enabled by default] if(_rtw_memcmp(pnetwork->network.MacAddress, sme->bssid, ETH_ALEN) == _FALSE) ^ In file included from /usr/src/8812au-4.2.2_7502.20130517/include/drv_types.h:32:0, from /usr/src/8812au-4.2.2_7502.20130517/os_dep/linux/ioctl_cfg80211.c:22: /usr/src/8812au-4.2.2_7502.20130517/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); ^ /usr/src/8812au-4.2.2_7502.20130517/os_dep/linux/ioctl_cfg80211.c:2593:5: warning: passing argument 2 of ‘_rtw_memcmp’ discards ‘const’ qualifier from pointer target type [enabled by default] || _rtw_memcmp(pnetwork->network.Ssid.Ssid, sme->ssid, sme->ssid_len) == _FALSE ^ In file included from /usr/src/8812au-4.2.2_7502.20130517/include/drv_types.h:32:0, from /usr/src/8812au-4.2.2_7502.20130517/os_dep/linux/ioctl_cfg80211.c:22: /usr/src/8812au-4.2.2_7502.20130517/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); ^ /usr/src/8812au-4.2.2_7502.20130517/os_dep/linux/ioctl_cfg80211.c:2601:14: warning: assignment discards ‘const’ qualifier from pointer target type [enabled by default] src_bssid = sme->bssid; ^ /usr/src/8812au-4.2.2_7502.20130517/os_dep/linux/ioctl_cfg80211.c:2682:2: warning: passing argument 2 of ‘rtw_cfg80211_set_wpa_ie’ discards ‘const’ qualifier from pointer target type [enabled by default] ret = rtw_cfg80211_set_wpa_ie(padapter, sme->ie, sme->ie_len); ^ /usr/src/8812au-4.2.2_7502.20130517/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) ^ /usr/src/8812au-4.2.2_7502.20130517/os_dep/linux/ioctl_cfg80211.c: In function ‘cfg80211_rtw_set_pmksa’: /usr/src/8812au-4.2.2_7502.20130517/os_dep/linux/ioctl_cfg80211.c:2913:2: warning: passing argument 1 of ‘_rtw_memcmp’ discards ‘const’ qualifier from pointer target type [enabled by default] if ( _rtw_memcmp( pmksa->bssid, strZeroMacAddress, ETH_ALEN ) == _TRUE ) ^ In file included from /usr/src/8812au-4.2.2_7502.20130517/include/drv_types.h:32:0, from /usr/src/8812au-4.2.2_7502.20130517/os_dep/linux/ioctl_cfg80211.c:22: /usr/src/8812au-4.2.2_7502.20130517/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); ^ /usr/src/8812au-4.2.2_7502.20130517/os_dep/linux/ioctl_cfg80211.c:2923:3: warning: passing argument 2 of ‘_rtw_memcmp’ discards ‘const’ qualifier from pointer target type [enabled by default] if( _rtw_memcmp( psecuritypriv->PMKIDList[index].Bssid, pmksa->bssid, ETH_ALEN) ==_TRUE ) ^ In file included from /usr/src/8812au-4.2.2_7502.20130517/include/drv_types.h:32:0, from /usr/src/8812au-4.2.2_7502.20130517/os_dep/linux/ioctl_cfg80211.c:22: /usr/src/8812au-4.2.2_7502.20130517/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); ^ /usr/src/8812au-4.2.2_7502.20130517/os_dep/linux/ioctl_cfg80211.c:2927:4: warning: passing argument 2 of ‘_rtw_memcpy’ discards ‘const’ qualifier from pointer target type [enabled by default] _rtw_memcpy( psecuritypriv->PMKIDList[index].PMKID, pmksa->pmkid, WLAN_PMKID_LEN); ^ In file included from /usr/src/8812au-4.2.2_7502.20130517/include/drv_types.h:32:0, from /usr/src/8812au-4.2.2_7502.20130517/os_dep/linux/ioctl_cfg80211.c:22: /usr/src/8812au-4.2.2_7502.20130517/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); ^ /usr/src/8812au-4.2.2_7502.20130517/os_dep/linux/ioctl_cfg80211.c:2941:3: warning: passing argument 2 of ‘_rtw_memcpy’ discards ‘const’ qualifier from pointer target type [enabled by default] _rtw_memcpy(psecuritypriv->PMKIDList[psecuritypriv->PMKIDIndex].Bssid, pmksa->bssid, ETH_ALEN); ^ In file included from /usr/src/8812au-4.2.2_7502.20130517/include/drv_types.h:32:0, from /usr/src/8812au-4.2.2_7502.20130517/os_dep/linux/ioctl_cfg80211.c:22: /usr/src/8812au-4.2.2_7502.20130517/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); ^ /usr/src/8812au-4.2.2_7502.20130517/os_dep/linux/ioctl_cfg80211.c:2942:3: warning: passing argument 2 of ‘_rtw_memcpy’ discards ‘const’ qualifier from pointer target type [enabled by default] _rtw_memcpy(psecuritypriv->PMKIDList[psecuritypriv->PMKIDIndex].PMKID, pmksa->pmkid, WLAN_PMKID_LEN); ^ In file included from /usr/src/8812au-4.2.2_7502.20130517/include/drv_types.h:32:0, from /usr/src/8812au-4.2.2_7502.20130517/os_dep/linux/ioctl_cfg80211.c:22: /usr/src/8812au-4.2.2_7502.20130517/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); ^ /usr/src/8812au-4.2.2_7502.20130517/os_dep/linux/ioctl_cfg80211.c: In function ‘cfg80211_rtw_del_pmksa’: /usr/src/8812au-4.2.2_7502.20130517/os_dep/linux/ioctl_cfg80211.c:2967:3: warning: passing argument 2 of ‘_rtw_memcmp’ discards ‘const’ qualifier from pointer target type [enabled by default] if( _rtw_memcmp( psecuritypriv->PMKIDList[index].Bssid, pmksa->bssid, ETH_ALEN) ==_TRUE ) ^ In file included from /usr/src/8812au-4.2.2_7502.20130517/include/drv_types.h:32:0, from /usr/src/8812au-4.2.2_7502.20130517/os_dep/linux/ioctl_cfg80211.c:22: /usr/src/8812au-4.2.2_7502.20130517/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); ^ /usr/src/8812au-4.2.2_7502.20130517/os_dep/linux/ioctl_cfg80211.c: At top level: /usr/src/8812au-4.2.2_7502.20130517/os_dep/linux/ioctl_cfg80211.c:5041:2: warning: initialization from incompatible pointer type [enabled by default] .get_station = cfg80211_rtw_get_station, ^ /usr/src/8812au-4.2.2_7502.20130517/os_dep/linux/ioctl_cfg80211.c:5041:2: warning: (near initialization for ‘rtw_cfg80211_ops.get_station’) [enabled by default] /usr/src/8812au-4.2.2_7502.20130517/os_dep/linux/ioctl_cfg80211.c:5069:2: warning: initialization from incompatible pointer type [enabled by default] .add_station = cfg80211_rtw_add_station, ^ /usr/src/8812au-4.2.2_7502.20130517/os_dep/linux/ioctl_cfg80211.c:5069:2: warning: (near initialization for ‘rtw_cfg80211_ops.add_station’) [enabled by default] /usr/src/8812au-4.2.2_7502.20130517/os_dep/linux/ioctl_cfg80211.c:5070:2: warning: initialization from incompatible pointer type [enabled by default] .del_station = cfg80211_rtw_del_station, ^ /usr/src/8812au-4.2.2_7502.20130517/os_dep/linux/ioctl_cfg80211.c:5070:2: warning: (near initialization for ‘rtw_cfg80211_ops.del_station’) [enabled by default] /usr/src/8812au-4.2.2_7502.20130517/os_dep/linux/ioctl_cfg80211.c:5071:2: warning: initialization from incompatible pointer type [enabled by default] .change_station = cfg80211_rtw_change_station, ^ /usr/src/8812au-4.2.2_7502.20130517/os_dep/linux/ioctl_cfg80211.c:5071:2: warning: (near initialization for ‘rtw_cfg80211_ops.change_station’) [enabled by default] /usr/src/8812au-4.2.2_7502.20130517/os_dep/linux/ioctl_cfg80211.c:5087:2: warning: initialization from incompatible pointer type [enabled by default] .mgmt_tx = cfg80211_rtw_mgmt_tx, ^ /usr/src/8812au-4.2.2_7502.20130517/os_dep/linux/ioctl_cfg80211.c:5087:2: warning: (near initialization for ‘rtw_cfg80211_ops.mgmt_tx’) [enabled by default] CC [M] /usr/src/8812au-4.2.2_7502.20130517/os_dep/linux/rtw_android.o /usr/src/8812au-4.2.2_7502.20130517/os_dep/linux/rtw_android.c: In function ‘rtw_android_priv_cmd’: /usr/src/8812au-4.2.2_7502.20130517/os_dep/linux/rtw_android.c:356:30: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast] if (copy_from_user(command, (void *)priv_cmd.buf, priv_cmd.total_len)) { ^ /usr/src/8812au-4.2.2_7502.20130517/os_dep/linux/rtw_android.c:548:4: warning: passing argument 1 of ‘get_int_from_command’ makes pointer from integer without a cast [enabled by default] pwfd_info->rtsp_ctrlport = ( u16 ) get_int_from_command( priv_cmd.buf ); ^ /usr/src/8812au-4.2.2_7502.20130517/os_dep/linux/rtw_android.c:307:5: note: expected ‘char *’ but argument is of type ‘compat_uptr_t’ int get_int_from_command(char* pcmd ) ^ /usr/src/8812au-4.2.2_7502.20130517/os_dep/linux/rtw_android.c:568:4: warning: passing argument 1 of ‘get_int_from_command’ makes pointer from integer without a cast [enabled by default] pwfd_info->wfd_device_type = ( u8 ) get_int_from_command( priv_cmd.buf ); ^ /usr/src/8812au-4.2.2_7502.20130517/os_dep/linux/rtw_android.c:307:5: note: expected ‘char *’ but argument is of type ‘compat_uptr_t’ int get_int_from_command(char* pcmd ) ^ /usr/src/8812au-4.2.2_7502.20130517/os_dep/linux/rtw_android.c:592:20: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast] if (copy_to_user((void *)priv_cmd.buf, command, bytes_written)) { ^ CC [M] /usr/src/8812au-4.2.2_7502.20130517/hal/hal_intf.o CC [M] /usr/src/8812au-4.2.2_7502.20130517/hal/hal_com.o CC [M] /usr/src/8812au-4.2.2_7502.20130517/hal/hal_com_phycfg.o CC [M] /usr/src/8812au-4.2.2_7502.20130517/hal/hal_phy.o CC [M] /usr/src/8812au-4.2.2_7502.20130517/hal/led/hal_usb_led.o CC [M] /usr/src/8812au-4.2.2_7502.20130517/hal/HalPwrSeqCmd.o CC [M] /usr/src/8812au-4.2.2_7502.20130517/hal/rtl8812a/Hal8812PwrSeq.o CC [M] /usr/src/8812au-4.2.2_7502.20130517/hal/rtl8812a/Hal8821APwrSeq.o CC [M] /usr/src/8812au-4.2.2_7502.20130517/hal/rtl8812a/rtl8812a_xmit.o CC [M] /usr/src/8812au-4.2.2_7502.20130517/hal/rtl8812a/rtl8812a_sreset.o CC [M] /usr/src/8812au-4.2.2_7502.20130517/hal/rtl8812a/rtl8812a_hal_init.o CC [M] /usr/src/8812au-4.2.2_7502.20130517/hal/rtl8812a/rtl8812a_phycfg.o CC [M] /usr/src/8812au-4.2.2_7502.20130517/hal/rtl8812a/rtl8812a_rf6052.o CC [M] /usr/src/8812au-4.2.2_7502.20130517/hal/rtl8812a/rtl8812a_dm.o CC [M] /usr/src/8812au-4.2.2_7502.20130517/hal/rtl8812a/rtl8812a_rxdesc.o CC [M] /usr/src/8812au-4.2.2_7502.20130517/hal/rtl8812a/rtl8812a_cmd.o CC [M] /usr/src/8812au-4.2.2_7502.20130517/hal/rtl8812a/usb/usb_halinit.o CC [M] /usr/src/8812au-4.2.2_7502.20130517/hal/rtl8812a/usb/rtl8812au_led.o CC [M] /usr/src/8812au-4.2.2_7502.20130517/hal/rtl8812a/usb/rtl8812au_xmit.o CC [M] /usr/src/8812au-4.2.2_7502.20130517/hal/rtl8812a/usb/rtl8812au_recv.o CC [M] /usr/src/8812au-4.2.2_7502.20130517/hal/rtl8812a/usb/usb_ops_linux.o CC [M] /usr/src/8812au-4.2.2_7502.20130517/hal/rtl8812a/rtl8812a_mp.o CC [M] /usr/src/8812au-4.2.2_7502.20130517/hal/OUTSRC/odm_debug.o CC [M] /usr/src/8812au-4.2.2_7502.20130517/hal/OUTSRC/odm_interface.o CC [M] /usr/src/8812au-4.2.2_7502.20130517/hal/OUTSRC/odm_HWConfig.o CC [M] /usr/src/8812au-4.2.2_7502.20130517/hal/OUTSRC/odm.o CC [M] /usr/src/8812au-4.2.2_7502.20130517/hal/OUTSRC/HalPhyRf.o CC [M] /usr/src/8812au-4.2.2_7502.20130517/hal/OUTSRC/rtl8812a/HalHWImg8812A_FW.o CC [M] /usr/src/8812au-4.2.2_7502.20130517/hal/OUTSRC/rtl8812a/HalHWImg8812A_MAC.o CC [M] /usr/src/8812au-4.2.2_7502.20130517/hal/OUTSRC/rtl8812a/HalHWImg8812A_BB.o CC [M] /usr/src/8812au-4.2.2_7502.20130517/hal/OUTSRC/rtl8812a/HalHWImg8812A_RF.o CC [M] /usr/src/8812au-4.2.2_7502.20130517/hal/OUTSRC/rtl8812a/HalHWImg8812A_TestChip_FW.o CC [M] /usr/src/8812au-4.2.2_7502.20130517/hal/OUTSRC/rtl8812a/HalHWImg8812A_TestChip_MAC.o CC [M] /usr/src/8812au-4.2.2_7502.20130517/hal/OUTSRC/rtl8812a/HalHWImg8812A_TestChip_BB.o CC [M] /usr/src/8812au-4.2.2_7502.20130517/hal/OUTSRC/rtl8812a/HalHWImg8812A_TestChip_RF.o CC [M] /usr/src/8812au-4.2.2_7502.20130517/hal/OUTSRC/rtl8812a/HalPhyRf_8812A.o CC [M] /usr/src/8812au-4.2.2_7502.20130517/hal/OUTSRC/rtl8812a/odm_RegConfig8812A.o CC [M] /usr/src/8812au-4.2.2_7502.20130517/hal/OUTSRC/rtl8821a/HalHWImg8821A_FW.o CC [M] /usr/src/8812au-4.2.2_7502.20130517/hal/OUTSRC/rtl8821a/HalHWImg8821A_MAC.o CC [M] /usr/src/8812au-4.2.2_7502.20130517/hal/OUTSRC/rtl8821a/HalHWImg8821A_BB.o CC [M] /usr/src/8812au-4.2.2_7502.20130517/hal/OUTSRC/rtl8821a/HalHWImg8821A_RF.o CC [M] /usr/src/8812au-4.2.2_7502.20130517/hal/OUTSRC/rtl8821a/HalHWImg8821A_TestChip_MAC.o CC [M] /usr/src/8812au-4.2.2_7502.20130517/hal/OUTSRC/rtl8821a/HalHWImg8821A_TestChip_BB.o CC [M] /usr/src/8812au-4.2.2_7502.20130517/hal/OUTSRC/rtl8821a/HalHWImg8821A_TestChip_RF.o CC [M] /usr/src/8812au-4.2.2_7502.20130517/hal/OUTSRC/rtl8821a/HalPhyRf_8821A.o CC [M] /usr/src/8812au-4.2.2_7502.20130517/hal/OUTSRC/rtl8821a/odm_RegConfig8821A.o CC [M] /usr/src/8812au-4.2.2_7502.20130517/core/rtw_mp.o CC [M] /usr/src/8812au-4.2.2_7502.20130517/core/rtw_mp_ioctl.o LD [M] /usr/src/8812au-4.2.2_7502.20130517/8812au.o Building modules, stage 2. MODPOST 1 modules CC /usr/src/8812au-4.2.2_7502.20130517/8812au.mod.o LD [M] /usr/src/8812au-4.2.2_7502.20130517/8812au.ko make[1]: Leaving directory '/usr/src/linux-headers-3.16.0-4-amd64'
Ostatnio edytowany przez morfik (2014-12-13 10:11:12)
Offline
Udało mi się zbudować ten moduł. Problem był z plikiem dkms.conf . Obecnie on ma taką postać:
PACKAGE_NAME="8812au" PACKAGE_VERSION="4.2.2_7502.20130517" BUILT_MODULE_NAME="8812au" DEST_MODULE_LOCATION="/kernel/drivers/net/wireless/" AUTOINSTALL="yes" #REMAKE_INITRD="yes" MAKE="'make' all" CLEAN="'make' clean"
Zatem się trochę różni od poprzedniego i cały proces budowania i instalowania przeszedł bez problemu:
root:/usr/src# dkms add -m 8812au -v 4.2.2_7502.20130517 Creating symlink /var/lib/dkms/8812au/4.2.2_7502.20130517/source -> /usr/src/8812au-4.2.2_7502.20130517 DKMS: add completed . root:/usr/src# dkms build -m 8812au -v 4.2.2_7502.20130517 Kernel preparation unnecessary for this kernel. Skipping... Building module: cleaning build area.... 'make' all........................... cleaning build area.... DKMS: build completed. root:/usr/src# dkms install -m 8812au -v 4.2.2_7502.20130517 8812au: Running module version sanity check. - Original module - No original module exists within this kernel - Installation - Installing to /lib/modules/3.16.0-4-amd64/updates/dkms/ depmod.... DKMS: install completed. root:/usr/src# dkms status 8812au, 4.2.2_7502.20130517, 3.16.0-4-amd64, x86_64: installed sysdig, 0.1.89, 3.16.0-4-amd64, x86_64: installed virtualbox, 4.3.18, 3.16.0-4-amd64, x86_64: installed xtables-addons, 2.6, 3.16.0-4-amd64, x86_64: installed
Jeszcze tak na próbę zainstalowałem inny kernel by sprawdzić czy aby na pewno zostanie ten moduł i tam dodany i jak widać, został:
root:/usr/src# ls -al /lib/modules/*/updates/dkms/8812au.ko -rw-r--r-- 1 root root 1.8M 2014-12-13 09:53:00 /lib/modules/3.16.0-4-amd64/updates/dkms/8812au.ko -rw-r--r-- 1 root root 1.8M 2014-12-13 10:05:07 /lib/modules/3.17.0-trunk-amd64/updates/dkms/8812au.ko
Offline