0

I try to build the rt73.ko linux driver for android using cross complile. I have download the android NDK and the Kernel sources of the the target system (Rockchip RK3066) and when I build the driver I am getting the following error:

root@slax:~/2011_0210_RT73_Linux_STA_Drv1.1.0.5/Module# make CROSS_COMPILE=arm-linux-androideabi- make -C /root/kernel SUBDIRS=/root/2011_0210_RT73_Linux_STA_Drv1.1.0.5/Module mod-ules make[1]: Entering directory /root/kernel' CC [M] /root/2011_0210_RT73_Linux_STA_Drv1.1.0.5/Module/rtmp_main.o /root/2011_0210_RT73_Linux_STA_Drv1.1.0.5/Module/rtmp_main.c: In function 'usb_rtusb_probe': /root/2011_0210_RT73_Linux_STA_Drv1.1.0.5/Module/rtmp_main.c:1152:3: warning: return makes integer from pointer without a cast [enabled by default] /root/2011_0210_RT73_Linux_STA_Drv1.1.0.5/Module/rtmp_main.c: In function 'usb_rtusb_disconnect': /root/2011_0210_RT73_Linux_STA_Drv1.1.0.5/Module/rtmp_main.c:1315:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement] /root/2011_0210_RT73_Linux_STA_Drv1.1.0.5/Module/rtmp_main.c: In function 'usb_rtusb_close': /root/2011_0210_RT73_Linux_STA_Drv1.1.0.5/Module/rtmp_main.c:655:1: warning: the frame size of 2128 bytes is larger than 1024 bytes [-Wframe-larger-than=] /root/android-ndk-r8c/toolchains/arm-linux-androideabi-4.6/prebuilt/linux-x86/bin/../lib/gcc/arm-linux-androideabi/4.6/../../../../arm-linux-androideabi/bin/as: /usr/lib/libz.so.1: no version information available (required by /root/android-ndk-r8c/toolchains/arm-linux-androideabi-4.6/prebuilt/linux-x86/bin/../lib/gcc/arm-linux-androideabi/4.6/../../../../arm-linux-androideabi/bin/as) /bin/sh: scripts/basic/fixdep: cannot execute binary file make[2]: *** [/root/2011_0210_RT73_Linux_STA_Drv1.1.0.5/Module/rtmp_main.o] Error 126 make[1]: *** [_module_/root/2011_0210_RT73_Linux_STA_Drv1.1.0.5/Module] Error 2 make[1]: Leaving directory/root/kernel' make: * [all] Error 2

Could you please help me to overcome the above error?

4

1 回答 1

0

虽然你交叉编译,但只能编译内核。scripts/basic/fixdep 是用户态程序。

为了克服这个问题,您需要使用http://crosstool-ng.org/例如。

于 2013-06-29T15:44:46.430 回答