0
我一直在嘗試交叉編譯可加載的內核模塊,並且我一直在收到警告消息,希望能夠獲得幫助。編譯警告 - ARM交叉編譯器
下面是警告消息
make[1]: Entering directory `/home/userid/rowboat-android/kernel'
Building modules, stage 2.
MODPOST 1 modules
WARNING: "omap_device_build" [/home/userid/myfiles/lcdc_load_device.ko] undefined!
WARNING: "omap_hwmod_lookup" [/home/userid/myfiles/lcdc_load_device.ko] undefined!
make[1]: Leaving directory `/home/userid/rowboat-android/kernel'
下面是Makefile文件
obj-m :=lcdc_load_device.o
lcdc_load_device-m := ../rowboat-android/kernel/arch/arm/plat-omap/omap_device.o
lcdc_load_device-m += ../rowboat-android/kernel/arch/arm/mach-omap2/omap_hwmod.o
ccflags-m := -I$(src)/../rowboat-android/kernel/arch/arm/plat-omap/include/plat/
KDIR := /home/userid/rowboat-android/kernel/
PWD := $(shell pwd)
default:
$(MAKE) ARCH=arm CROSS_COMPILE=/home/userid/rowboat-android/prebuilt/linux-x86/toolchain/arm-eabi-4.4.3/bin/arm-eabi- -C $(KDIR) SUBDIRS=$(PWD) modules
clean:
$(MAKE) -C $(KDIR) SUBDIRS=$(PWD) clean
我懷疑makefile文件是找到頭文件「omap_device_build」和「omap_hwmod_lookup 「函數。
感謝您的幫助,並感謝您的提前。
這是完整的makefile嗎?它使用不在makefile中的目標('modules')再次調用'make'。你輸入的'make'命令是什麼。它只是「製造」? – lurker
是的,這是完整的makefile。我進入了make。你能澄清第二個陳述嗎? rowboat-android/kernel確實有一個makefile。看起來像我的問題可能在KDIR變量 –
生成文件中的默認目標調用「$(MAKE)」,目標是「模塊」,因此我不確定它會在哪裏選擇該目標。但這與警告無關。有些東西正在調用這些函數,而沒有在庫中找到它們。 – lurker