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!

Ogłoszenie

Prosimy o pomoc dla małej Julki — przekaż 1% podatku na Fundacji Dzieciom zdazyć z Pomocą.
Więcej informacji na dug.net.pl/pomagamy/.

#1  2014-12-13 07:56:48

  morfik - Cenzor wirtualnego świata

morfik
Cenzor wirtualnego świata
Skąd: ze WSI
Zarejestrowany: 2011-09-15
Serwis

[SOLVED] Budowanie modułów via DKMS

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:

Kod:

# 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:

Kod:

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:

Kod:

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:

Kod:

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:

Kod:

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:

Kod:

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:

Kod:

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:

Kod:

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

 

#2  2014-12-13 10:10:42

  morfik - Cenzor wirtualnego świata

morfik
Cenzor wirtualnego świata
Skąd: ze WSI
Zarejestrowany: 2011-09-15
Serwis

Re: [SOLVED] Budowanie modułów via DKMS

Udało mi się zbudować ten moduł. Problem był z  plikiem dkms.conf . Obecnie on ma taką postać:

Kod:

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:

Kod:

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ł:

Kod:

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

 

Stopka forum

Powered by PunBB
© Copyright 2002–2005 Rickard Andersson
To nie jest tylko forum, to nasza mała ojczyzna ;-)

[ Generated in 0.009 seconds, 9 queries executed ]

Informacje debugowania

Time (s) Query
0.00013 SET CHARSET latin2
0.00006 SET NAMES latin2
0.00161 SELECT u.*, g.*, o.logged FROM punbb_users AS u INNER JOIN punbb_groups AS g ON u.group_id=g.g_id LEFT JOIN punbb_online AS o ON o.ident='18.188.40.207' WHERE u.id=1
0.00123 REPLACE INTO punbb_online (user_id, ident, logged) VALUES(1, '18.188.40.207', 1713553041)
0.00029 SELECT * FROM punbb_online WHERE logged<1713552741
0.00058 SELECT t.subject, t.closed, t.num_replies, t.sticky, f.id AS forum_id, f.forum_name, f.moderators, fp.post_replies, 0 FROM punbb_topics AS t INNER JOIN punbb_forums AS f ON f.id=t.forum_id LEFT JOIN punbb_forum_perms AS fp ON (fp.forum_id=f.id AND fp.group_id=3) WHERE (fp.read_forum IS NULL OR fp.read_forum=1) AND t.id=26794 AND t.moved_to IS NULL
0.00031 SELECT search_for, replace_with FROM punbb_censoring
0.00191 SELECT u.email, u.title, u.url, u.location, u.use_avatar, u.signature, u.email_setting, u.num_posts, u.registered, u.admin_note, p.id, p.poster AS username, p.poster_id, p.poster_ip, p.poster_email, p.message, p.hide_smilies, p.posted, p.edited, p.edited_by, g.g_id, g.g_user_title, o.user_id AS is_online FROM punbb_posts AS p INNER JOIN punbb_users AS u ON u.id=p.poster_id INNER JOIN punbb_groups AS g ON g.g_id=u.group_id LEFT JOIN punbb_online AS o ON (o.user_id=u.id AND o.user_id!=1 AND o.idle=0) WHERE p.topic_id=26794 ORDER BY p.id LIMIT 0,25
0.00095 UPDATE punbb_topics SET num_views=num_views+1 WHERE id=26794
Total query time: 0.00707 s