在poky版本中运行自定义bitbake时发生do_install错误

我正在使用最新的poky-am335x来构build简单的helloworld应用程序。 有了一些解决方法,我可以编译应用程序。 我正在做很多的安装二进制文件的path,但build立是抛出错误。

错误日志:

DEBUG: SITE files ['endian-little', 'bit-32', 'arm-common', 'common-linux', 'common-glibc', 'arm-linux', 'arm-linux-gnueabi', 'common'] DEBUG: Executing shell function do_install NOTE: make -j 4 DESTDIR=/home/pis1kor/workspace/poky-am335x/build/tmp/work/armv7a-vfp-neon-poky-linux-gnueabi/helloworld-1.0-r0/image install make: *** No rule to make target `install'. Stop. ERROR: oe_runmake failed ERROR: Function failed: do_install (see /home/pis1kor/workspace/poky-am335x/build/tmp/work/armv7a-vfp-neon-poky-linux-gnueabi/helloworld-1.0-r0/temp/log.do_install.29583 for further information) 

Bitbake文件:

 DESCRIPTION = "Simple helloworld application" SECTION = "examples" LICENSE = "MIT" LIC_FILES_CHKSUM = "file://${COMMON_LICENSE_DIR}/MIT;md5=0835ade698e0bcf8506ecda2f7b4f302" PR = "r0" SRC_URI = "file://helloworld.tar" do_compile () { make -C ${WORKDIR}/helloworld all } do_install() { oe_runmake install DESTDIR=${D} } #do_install() { # oe_runmake install DESTDIR=${D} # make -C ${WORKDIR}/helloworld/ install # oe_runmake 'DESTDIR=${D}' install # cp -f ${WORKDIR}/helloworld/helloworld ${WORKDIR}/image # oe_runmake install ${WORKDIR}/helloworld # make -C ${WORKDIR}/helloworld install # install -d ${D}${bindir}/ ZZ #} inherit autotools gettext 

Makefile:

 IDIR = ./include CC = arm-arago-linux-gnueabi-gcc -march=armv7-a -mthumb-interwork -mfloat-abi=softfp -mfpu=neon -mtune=cortex-a8 --sysroot=/home/pis1kor/workspace/poky-am335x/build/tmp/sysroots/am335x-evm CFLAGS = -I$(IDIR) LIBS = -lm FILES = ./src/helloworld.c OUT_EXE = helloworld INSTALL = /usr/bin/install -c INSTALL_DATA = ${INSTALL} -m 644 all: $(FILES) $(CC) -o $(OUT_EXE) $(FILES) $(CFLAGS) $(LIBS) install: $(INSTALL_DATA) -C helloworld ../image # sudo cp ./helloworld ../image/ clean: rm -f *.o helloworld 

评论线保持这样的,因为只是为了豪宅所有的痕迹我试过。

Solutions Collecting From Web of "在poky版本中运行自定义bitbake时发生do_install错误"

基本区别如下。

 S = "${WORKDIR}/helloworld/" EXTRA_OEMAKE = 'all -C ${S}' 

“EXTRA_OEMAKE”是我以前没有用过的关键宏。

我已经改变了像下面的bitbake文件helloworld.bb文件。

 DESCRIPTION = "Simple helloworld application" SECTION = "examples" LICENSE = "MIT" LIC_FILES_CHKSUM = "file://${COMMON_LICENSE_DIR}/MIT;md5=0835ade698e0bcf8506ecda2f7b4f302" PR = "r0" S = "${WORKDIR}/helloworld/" EXTRA_OEMAKE = 'all -C ${S}' SRC_URI = "file://helloworld.tar" inherit autotools gettext