在Makefile中交叉编译内核模块问题

时间:2019-08-28 23:22:08

标签: makefile cross-compiling embedded-linux yocto kernel-module

我正在intelX86_64主机上工作,并且我正在尝试交叉编译用于ARM嵌入式板体系结构的linux模块。

我用yocto项目为我的电路板制作了一个Linux操作系统,并构建了SDK交叉编译器。

这是我运行SDK环境脚本时得到的:

  

arm-poky-linux-gnueabi-gcc -march = armv7-a -marm -mfpu = neon   -mfloat-abi = hard -mcpu = cortex-a5 --sysroot = / opt / poky-atmel / 2.5.3 / sysroots / cortexa5hf-neon-poky-linux-gnueabi

基于此,这是我制作的Makefile:

MYY_KERNEL_DIR ?= /home/gaston/linux4sam/poky/build-microchip/tmp/work/sama5d27_som1_ek_sd-poky-linux-gnueabi/linux-at91/4.14+gitAUTOINC+b733e44da2-r0/image/lib/modules/4.14.73-linux4sam-6.0-dirty/

ARCH ?= armv7-a

CROSS_COMPILE ?= arm-poky-linux-gnueabi-gcc

obj-m += uleds.o

all:
        make ARCH=$(ARCH) CROSS_COMPILE=$(CROSS_COMPILE) M=$(PWD) -C $(MYY_KERNEL_DIR) modules

clean:
        make ARCH=$(ARCH) CROSS_COMPILE=$(CROSS_COMPILE) M=$(PWD) -C $(MYY_KERNEL_DIR) clean

这是我执行MAKE命令时得到的错误:

  

make ARCH = arm CROSS_COMPILE = arm-poky-linux-gnueabi-   M = /家/加斯顿/屎-C   /home/gaston/linux4sam/poky/build-microchip/tmp/work/sama5d27_som1_ek_sd-poky-linux-gnueabi/linux-at91/4.14+gitAUTOINC+b733e44da2-r0/image/lib/modules/4.14.73-linux4sam-6.0 -脏/   模块

     

make [1]:进入目录   '/home/gaston/linux4sam/poky/build-microchip/tmp/work/sama5d27_som1_ek_sd-poky-linux-gnueabi/linux-at91/4.14+gitAUTOINC+b733e44da2-r0/image/lib/modules/4.14.73-linux4sam- 6.0脏”   make [1]:***没有规则可用于创建目标“模块”。停止。

     

make [1]:离开目录   '/home/gaston/linux4sam/poky/build-microchip/tmp/work/sama5d27_som1_ek_sd-poky-linux-gnueabi/linux-at91/4.14+gitAUTOINC+b733e44da2-r0/image/lib/modules/4.14.73-linux4sam- 6.0脏”   Makefile:10:目标“全部”的配方失败:*** [all]错误2

我犯了什么错误?我怎样才能解决这个问题 ?谢谢

0 个答案:

没有答案