Yocto glibc-locale do_package установлен, но не поставляется ни в одном пакете

Я пытаюсь создать собственное изображение на yocto. Когда я создаю образ, я получаю ошибку в glibc-locale (шаг do_package).

Ошибка

ERROR: glibc-locale-2.24-r0 do_package: QA Issue: glibc-locale: Files/directories were installed but not shipped in any package:
    {
        "a lot of file in /usr/lib/gconv, /usr/share/i18n paths"
    }
    Please set FILES such that these items are packaged. Alternatively if they are unneeded, avoid installing them or delete them within do_install.
    glibc-locale: 820 installed and not shipped files. [installed-vs-shipped]
    ERROR: glibc-locale-2.24-r0 do_package: Fatal QA errors found, failing task.
    ERROR: glibc-locale-2.24-r0 do_package: Function failed: do_package
    ERROR: Logfile of failure stored in: /home/test/rpi/build/tmp/work/cortexa7hf-neon-vfpv4-poky-linux-gnueabi/glibc-locale/2.24-r0/temp/log.do_package.30243
    ERROR: Task (/home/test/poky-morty/meta/recipes-core/glibc/glibc-locale_2.24.bb:do_package) failed with exit code '1'

Я попытался решить эту проблему, добавив в файл glibc-locale_2.24.bb следующее:

INSANE_SKIP_${PN} = "установлено или отправлено"

Когда я делаю это, на шаге glibc do_package больше нет ошибки, но у меня есть ошибка на шаге do_rootfs:

 ERROR: ekt-image-1.0-r0 do_rootfs: Unable to install packages. Command '/home/test/rpi/build/tmp/sysroots/x86_64-linux/usr/bin/opkg --volatile-cache -f /home/test/rpi/build/tmp/work/raspberrypi3-poky-linux-gnueabi/ekt-image/1.0-r0/opkg.conf -t /home/test/rpi/build/tmp/work/raspberrypi3-poky-linux-gnueabi/ekt-image/1.0-r0/temp/ipktemp/ -o /home/test/rpi/build/tmp/work/raspberrypi3-poky-linux-gnueabi/ekt-image/1.0-r0/rootfs  --force_postinstall --prefer-arch-to-version   install locale-base-en-us' returned 255:
Collected errors:
 * opkg_prepare_url_for_install: Couldn't find anything to satisfy 'locale-base-en-us'.

ERROR: ekt-image-1.0-r0 do_rootfs: Function failed: do_rootfs
ERROR: Logfile of failure stored in: /home/test/rpi/build/tmp/work/raspberrypi3-poky-linux-gnueabi/ekt-image/1.0-r0/temp/log.do_rootfs.10085
ERROR: Task (/home/test/rpi/meta-rpi/images/ekt-image.bb:do_rootfs) failed with exit code '1'

Я попытался очистить glibc, glibc-locale, но это не сработало.

Изменить: я попытался добавить эти строки в свой файл glibc-locale.inc:

FILES_kernel-base += "/usr/share/i18n/charmaps/*"
FILES_kernel-base += "/usr/share/i18n/locales/*"
FILES_kernel-base += "/usr/lib/gconv/*"
FILES_kernel-base += "/usr/share/i18n*"

А также эти строки:

FILES_${PN} += "/usr/share/i18n/charmaps/*"
FILES_${PN} += "/usr/share/i18n/locales/*"
FILES_${PN} += "/usr/lib/gconv/*"
FILES_${PN} += "/usr/share/i18n*"

Но это не решает мою проблему.


person test gprs    schedule 30.01.2017    source источник


Ответы (2)


У меня была эта проблема, и, похоже, это связано с тем, что я не указал параметры glibc в DISTRO_FEATURES для сборки. Если вы переопределяете DISTRO_FEATURES, не забудьте включить ${DISTRO_FEATURES_LIBC} в его определение.

См. Re: [yocto] Проблема создания glibc-locale на Список рассылки Йокто.

См. также комментарии о DISTRO_FEATURES_LIBC в openembedded- core/local.conf.sample.extended на главном сервере · openembedded/openembedded-core.

person Craig McQueen    schedule 26.05.2017

Вместо добавления такой функции дистрибутива:

DISTRO_FEATURES += "feature"

Вместо этого попробуйте:

DISTRO_FEATURES_append = " feature"

Первое предложение в моем conf/local.conf перезаписывало определения ?=, такие как DISTRO_FEATURES_LIBC.

person Fernando Endo    schedule 09.10.2018