无法完成为Android构建内核模块

时间:2012-08-06 13:30:32

标签: android module compilation kernel

我正在尝试为Android构建内核模块,使用2.6.32内核(PL2303 usb-serial转换器模块,更确切地说),但由于某种原因我无法实际构建模块

这是我在编译模块之前运行的代码:

export PATH=~/android-ndk-r5/toolchains/arm-eabi-4.4.0/prebuilt/linux-x86/bin/:$PATH
make menuconfig ARCH=arm CROSS_COMPILE=arm-eabi- -j4

配置完所有内容以匹配平板电脑的内核版本后,我运行

make modules ARCH=arm CROSS_COMPILE=arm-eabi- -j4

这是位于drivers / usb / serial上的makefile(还有其他几行,比如文件夹中所有其他驱动程序的最后一行,这只是我正在使用的那个)

obj-$(CONFIG_USB_SERIAL)            += usbserial.o

usbserial-obj-$(CONFIG_USB_SERIAL_CONSOLE)  += console.o
usbserial-obj-$(CONFIG_USB_EZUSB)       += ezusb.o

usbserial-objs := usb-serial.o generic.o bus.o $(usbserial-obj-y)

obj-$(CONFIG_USB_SERIAL_PL2303)     += pl2303.o

但这只会创建.o文件,并在不构建实际.ko文件的情况下停止。知道造成这种情况的原因是什么?

1 个答案:

答案 0 :(得分:2)

obj-m:= usbserial.o告诉它制作usbserial.ko

请查看this中的 Makefile ,这可能会有所帮助。