2016-02-24 2 views
0

Я только что обновил свой Yocto Poky с «Daisy» до «Jethro», и теперь некоторые рецепты, которые раньше выполнялись нормально, выполнялись с задачей «do_install» с похожими сообщениями об ошибках :Некоторые рецепты терпят неудачу после обновления до Yocto 2.0 «Jethro»

ERROR: oe_runmake failed 
ERROR: Function failed: do_install (log file is located at /build/tmp/work/cortexa9hf/qpdf/6.0.0-r0/temp/log.do_install.31232) 
ERROR: Logfile of failure stored in: /build/tmp/work/cortexa9hf/qpdf/6.0.0-r0/temp/log.do_install.31232 
Log data follows: 
| DEBUG: SITE files ['endian-little', 'bit-32', 'arm-common', 'arm-32', 'common-linux', 'common-glibc', 'arm-linux', 'arm-linux-gnueabi', 'common'] 
| DEBUG: Executing shell function do_install 
| NOTE: make -j 8 DESTDIR=/build/tmp/work/cortexa9hf/qpdf/6.0.0-r0/image install 
| make: *** No rule to make target 'install'. Stop. 
| ERROR: oe_runmake failed 
| ERROR: Function failed: do_install (log file is located at /build/tmp/work/cortexa9hf/qpdf/6.0.0-r0/temp/log.do_install.31232) 
ERROR: Task 2 (/home/g0hl1n/git/meta-mine/recipes-foss/qpdf/qpdf_6.0.0.bb, do_install) failed with exit code '1' 

Я думаю, что это происходит как-то от разделения каталога сборки, но мои поиски ответа/решения не были успешными.
Рецепт, который выдает сообщение об ошибке выше:

DESCRIPTION = "PDF transformation/inspection software" 
HOMEPAGE = "http://qpdf.sourceforge.net" 
LICENSE = "Artistic-2.0" 
SECTION = "" 
DEPENDS = "libpcre" 
PR = "r0" 

SRC_URI = "https://github.com/qpdf/qpdf/archive/release-qpdf-${PV}.tar.gz" 
LIC_FILES_CHKSUM = "file://Artistic-2.0;md5=7806296b9fae874361e6fb10072b7ee3" 
SRC_URI[md5sum] = "a0601b0bc56d3f412fd3afecfce2721c" 
SRC_URI[sha256sum] = "ce323ca692ddc6da31a90ef8a5f7fb7bc6c61c1c037e2eac14e5d0fcfe6a2797" 

S="${WORKDIR}/${PN}-release-${PN}-${PV}" 

inherit autotools gettext 

# disable random file detection for cross-compile 
EXTRA_OECONF = "--without-random" 

PACKAGES =+ "libqpdf" 

FILES_libqpdf = "${libdir}/libqpdf.so.*" 

Любая помощь очень ценится, спасибо!

ответ

1

Я только что узнал ответ сам. (Я должен был сделать больше исследований, прежде чем публиковать здесь ...)

Сбой сборки из-за изменения класса autotools в обновлении Yocto 1.7.

отдельный каталог для сборки теперь используется по умолчанию: Класс Autotools был изменен, чтобы использовать каталог для строительства (B), который является отдельно от исходного каталога (S). Обычно это относится к как B! = S, или к внеуровневой сборке.

Если созданное программное обеспечение уже может создавать в каталоге отдельно от источника, вам ничего не нужно делать. Однако, если программное обеспечение не может быть построено таким образом, вам потребуется либо исправить программное обеспечение, чтобы он мог строить отдельно, либо вам нужно будет изменить рецепт, чтобы наследовать класс autotools-brokensep классов autotools или autotools_stage . [1]

Так меняется от inherit autotools к inherit autotools-brokensep исправили проблему с qpdf сборки.

[1] https://www.yoctoproject.org/docs/latest/mega-manual/mega-manual.html#migration-1.7-autotools-class-changes

Смежные вопросы