2013-08-29 27 views
5

最新のpoky-am335xを使用して、簡単なhelloworldアプリケーションを作成しています。いくつかの回避策を使って、アプリケーションをコンパイルすることができます。私はバイナリをインストールするために多くの道を行っていますが、ビルドエラーです。pokyビルドでカスタムbitbakeを実行中にdo_installエラーが発生しました

エラーログ:

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 

コメント行は、私が試したすべてのトレイルためだけの大邸宅にそのように保たれています。

+1

いずれにしても私を助けますか? – Pala

答えて

6

基本的な違いは以下のとおりです。

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 
関連する問題