Question

I'm trying to cross compile a Realtek wifi driver for an Airlink AWLL6075 wireless n usb adapter. The chip set is apparently RTL8191SU and I've obtained the drive for Linux from the Realtek download site. When cross compiling for the ARM Linux with OpenEmbedded the compilation fails with the following messages:

os_dep/linux/mlme_linux.c: In function 'rtw_os_indicate_scan_done':
os_dep/linux/mlme_linux.c:222:34: error: implicit declaration of function 'wdev_priv'

The offending section from mlme_linux.c is:

extern void indicate_wx_scan_complete_event(_adapter *padapter);
void rtw_os_indicate_scan_done( _adapter *padapter, bool aborted)
{
#ifdef CONFIG_IOCTL_CFG80211
    rtw_cfg80211_indicate_scan_done(wdev_to_priv(padapter->rtw_wdev), aborted);
#endif //CONFIG_IOCTL_CFG80211
    indicate_wx_scan_complete_event(padapter);
}

Any suggestions on how to fix this?

Regards, Matt

Was it helpful?

Solution

Implicit declaration of function means that the compiler can't find the function declaration in the header.

Try and track down the header file containing this guy. Perhaps dependency is missing.

A quick google gives out cfg80211.h as the culprit. Found in http://www.takatan.net/lxr/ident?i=wdev_priv

Searching for cfg80211 gives http://www.linuxwireless.org/en/developers/Documentation/cfg80211

As far as I can see, all you need to do is download the cfg80211.h file from the first link and include in your project.

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top