我正在尝试为Android构建一个内核模块,使用2.6.32内核(更准确地说,是一个PL2303的usb-串行转换模块),但由于某些原因,我无法实际构建这些模块。
这是我在编译模块之前运行的代码:
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文件的情况下停止。你知道这是什么原因吗?
发布于 2012-11-06 09:54:21
obj-m := usbserial.o告诉它生成usbserial.ko
请检查this中的Makefile,它可能会有所帮助。
https://stackoverflow.com/questions/11829297
复制相似问题