[oe] icedtea6-native: task compile fails with `unzip: cannot find zipfile directory in one of /oe/build-angstrom-next/angstrom-dev/sysroots/i686-linux/usr/bin/unzip or …`
Paul Menzel
paulepanter at users.sourceforge.net
Wed May 25 11:08:32 UTC 2011
Dear Robert,
On Mi, 2011-05-25 at 11:35 +0200, Robert Schuster wrote:
> > Importing binaries from component CORBA_DIST
> > ( cd /oe/build-angstrom-next/angstrom-dev/work/i686-linux/icedtea6-native-1.7.10-r4.0/icedtea6-1.7.10/openjdk-ecj/build/linux-x86 && /oe/build-angstrom-next/angstrom-dev/sysroots/i686-linux/usr/bin/unzip -o /oe/build-angstrom-next/angstrom-dev/work/i686-linux/icedtea6-native-1.7.10-r4.0/icedtea6-1.7.10/openjdk-ecj/build/linux-x86/corba/dist/lib/bin.zip )
> > Archive: /oe/build-angstrom-next/angstrom-dev/sysroots/i686-linux/usr/bin/unzip
> > End-of-central-directory signature not found. Either this file is not
> > a zipfile, or it constitutes one disk of a multi-part archive. In the
> > latter case the central directory and zipfile comment will be found on
> > the last disk(s) of this archive.
> > note: /oe/build-angstrom-next/angstrom-dev/sysroots/i686-linux/usr/bin/unzip may be a plain executable, not an archive
> > unzip: cannot find zipfile directory in one of /oe/build-angstrom-next/angstrom-dev/sysroots/i686-linux/usr/bin/unzip or /oe/build-angstrom-next/angstrom-dev/sysroots/i686-linux/usr/bin/unzip.zip, and cannot find /oe/build-angstrom-next/angstrom-dev/sysroots/i686-linux/usr/bin/unzip.ZIP, period.
> > make[4]: *** [/oe/build-angstrom-next/angstrom-dev/work/i686-linux/icedtea6-native-1.7.10-r4.0/icedtea6-1.7.10/openjdk-ecj/build/linux-x86/tmp/java/components_imported] Error 9
> Did you notice that somehow the makefile tries to unpack the file
> '/oe/build-angstrom-next/angstrom-dev/sysroots/i686-linux/usr/bin/unzip'.
It looks strange. But I thought that is some behavior of `unzip` to look
into some default paths.
> I smell some shell-quoting problem or similar.
I found the following parts but do not know how this can fail.
/oe/build-minimal-eglibc/minimal-dev/work/i686-linux/icedtea6-native-1.7.10-r4.0$ grep -Ri "Importing binaries" *
icedtea6-1.7.10/openjdk/jdk/make/common/internal/ImportComponents.gmk: $(ECHO) "Importing binaries from component $1"; \
icedtea6-1.7.10/openjdk-ecj/jdk/make/common/internal/ImportComponents.gmk: $(ECHO) "Importing binaries from component $1"; \
openjdk-src-dir/jdk/make/common/internal/ImportComponents.gmk: $(ECHO) "Importing binaries from component $1"; \
temp/log.do_compile:Importing binaries from component CORBA_DIST
temp/log.do_compile.22501:Importing binaries from component CORBA_DIST
looking at there is
# Importing optional component bin files (for install image)
define import-one-binaries
@if [ "$($1)" != "" -a -f $($1)/$(BIN_ZIP_FILE) ] ; then \
$(ECHO) "Importing binaries from component $1"; \
$(call Unzipper,$2,$($1)/$(BIN_ZIP_FILE)); \
fi
endef
and the function/method `Unzipper` is defined as follows.
# Unzip zip file $2 into directory $1 (if $2 exists)
# Warning: $2 must be absolute path not relative
define Unzipper
( \
$(MKDIR) -p $1; \
$(ECHO) "( $(CD) $1 && $(UNZIP) -o $2 )"; \
( $(CD) $1 && $(UNZIP) -o $2 ) \
)
endef
I do not see where this fails. By the way, to use the native `unzip` I have the following in my recipe (as send to the list [2]).
EXTRA_OEMAKE = ' \
ZIPEXE="${STAGING_BINDIR_NATIVE}/zip" \
UNZIP="${STAGING_BINDIR_NATIVE}/unzip" \
'
Thanks,
Paul
[1] icedtea6-1.7.10/openjdk/jdk/make/common/internal/ImportComponents.gmk
[2] http://patches.openembedded.org/patch/4621/
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 198 bytes
Desc: This is a digitally signed message part
URL: <http://lists.openembedded.org/pipermail/openembedded-devel/attachments/20110525/3534bd15/attachment-0002.sig>
More information about the Openembedded-devel
mailing list