如何在 Yocto 中安装文件
How to install files in Yocto
我为库编写了 Yocto 配方并尝试安装到映像。
当我 运行 命令 "bitbake myproject" 时,我得到跟随错误:
ERROR: sxe-0.1-r0 do_package: QA Issue: sxe: Files/directories were installed but not shipped in any package:
/sxe
/usr/share
/usr/share/sxm
/usr/share/sxm/baselines
/usr/share/sxm/baselines/resources.psv
/usr/share/sxm/baselines/resources_bcatl.psv
/usr/share/sxm/baselines/version.txt
/usr/share/sxm/baselines/resources_bcatp.psv
/usr/share/sxm/baselines/cgs
/usr/share/sxm/baselines/alerts
/usr/share/sxm/baselines/IntegratedSportsLogos
/usr/share/sxm/baselines/states
/usr/share/sxm/baselines/IntegratedLogos
/usr/share/sxm/baselines/tabweather
/usr/share/sxm/baselines/trafficplus
/usr/share/sxm/baselines/stocks
/usr/share/sxm/baselines/ev
/usr/share/sxm/baselines/contentAssociatedImage/Album020.zip
/usr/share/sxm/baselines/gmd/GEMBase_1.15.zip
/usr/share/sxm/baselines/parking/ParkingLocation2.zip
/usr/share/sxm/baselines/safeview/sxm_safeviewcameralocations_v120.zip
/usr/share/sxm/baselines/safeview/sxm_safeviewcameratypes_v120.zip
/usr/share/sxm/baselines/IntegratedBackgroundLogos/IntPortBack160816.zip
/usr/share/sxm/baselines/IntegratedBackgroundLogos/IntLandBack160816.zip
/usr/share/sxm/baselines/fuel/sxm_fuelbaseline23.pvn1.zip
/usr/share/sxm/baselines/fuel/sxm_canfuelbaseline3.pvn1.zip
/usr/share/sxm/baselines/phonetics/T005V054.psv.zip
/usr/share/sxm/baselines/phonetics/T000V054.psv.zip
/usr/share/sxm/baselines/phonetics/T001V011.psv.zip
/usr/share/sxm/baselines/phonetics/T006V011.psv.zip
/usr/share/sxm/baselines/phonetics/T003V003.psv.zip
/usr/share/sxm/baselines/phonetics/T004V000.psv.zip
/usr/share/sxm/baselines/phonetics/T002V000.psv.zip
/usr/share/sxm/baselines/movies/sxm_theatersbaseline23.pvn1.zip
/usr/share/sxm/baselines/movies/sxm_movieratingsv0.pvn1.zip
Please set FILES such that these items are packaged. Alternatively if they are unneeded, avoid installing them or delete them within do_install.
sxe: 55 installed and not shipped files. [installed-vs-shipped]
ERROR: sxe-0.1-r0 do_package: Fatal QA errors found, failing task.
ERROR: sxe-0.1-r0 do_package: Function failed: do_package
ERROR: Logfile of failure stored in: /home/local/SWTECNN/rkhairulin/imx-yocto-bspIII/build-wayland-imx8qmmekII/tmp/work/aarch64-poky-linux/sxe/0.1-r0/temp/log.do_package.32253
ERROR: Task (/home/local/SWTECNN/rkhairulin/imx-yocto-bspIII/sources/meta-sxe/recipes-example/example/sxe_0.1.bb:do_package) failed with exit code '1'
我该如何解决这个问题?我应该在 ricpe 中添加什么?
默认情况下,配方名称的包包含以下文件(参见here):
FILES_${PN} = "${bindir}/* ${sbindir}/* ${libexecdir}/* ${libdir}/lib*${SOLIBS} \
${sysconfdir} ${sharedstatedir} ${localstatedir} \
${base_bindir}/* ${base_sbindir}/* \
${base_libdir}/*${SOLIBS} \
${base_prefix}/lib/udev/rules.d ${prefix}/lib/udev/rules.d \
${datadir}/${BPN} ${libdir}/${BPN}/* \
${datadir}/pixmaps ${datadir}/applications \
${datadir}/idl ${datadir}/omf ${datadir}/sounds \
${libdir}/bonobo/servers"
因此 /usr/share/sxm 和 /sxe 中的文件在 ${D}
部署文件夹中创建,但它们未添加到任何包中。
您必须将此行添加到您的食谱中(参见 here):
FILES_${PN} += "/sxe ${datadir}/sxm"
注意 /usr/share 定义为 ${datadir}
如果您不需要这些文件,您可以从 ${D}
:
中删除它们
do_install_append(){
rm -r ${D}/sxe
rm -r ${D}/${datadir}/sxm
}
你必须告诉 bitbake 文件应该放到哪个包中。大概是这样的
FILES_sxe += " \
{root_prefix}/sxe \
{datadir}/sxe \
"
话虽如此,FHS 强烈反对将某些内容直接放在 /
下。有关预定义前缀和目录的更多信息,请查看 poky/meta/conf/bitbake.conf
我为库编写了 Yocto 配方并尝试安装到映像。
当我 运行 命令 "bitbake myproject" 时,我得到跟随错误:
ERROR: sxe-0.1-r0 do_package: QA Issue: sxe: Files/directories were installed but not shipped in any package:
/sxe
/usr/share
/usr/share/sxm
/usr/share/sxm/baselines
/usr/share/sxm/baselines/resources.psv
/usr/share/sxm/baselines/resources_bcatl.psv
/usr/share/sxm/baselines/version.txt
/usr/share/sxm/baselines/resources_bcatp.psv
/usr/share/sxm/baselines/cgs
/usr/share/sxm/baselines/alerts
/usr/share/sxm/baselines/IntegratedSportsLogos
/usr/share/sxm/baselines/states
/usr/share/sxm/baselines/IntegratedLogos
/usr/share/sxm/baselines/tabweather
/usr/share/sxm/baselines/trafficplus
/usr/share/sxm/baselines/stocks
/usr/share/sxm/baselines/ev
/usr/share/sxm/baselines/contentAssociatedImage/Album020.zip
/usr/share/sxm/baselines/gmd/GEMBase_1.15.zip
/usr/share/sxm/baselines/parking/ParkingLocation2.zip
/usr/share/sxm/baselines/safeview/sxm_safeviewcameralocations_v120.zip
/usr/share/sxm/baselines/safeview/sxm_safeviewcameratypes_v120.zip
/usr/share/sxm/baselines/IntegratedBackgroundLogos/IntPortBack160816.zip
/usr/share/sxm/baselines/IntegratedBackgroundLogos/IntLandBack160816.zip
/usr/share/sxm/baselines/fuel/sxm_fuelbaseline23.pvn1.zip
/usr/share/sxm/baselines/fuel/sxm_canfuelbaseline3.pvn1.zip
/usr/share/sxm/baselines/phonetics/T005V054.psv.zip
/usr/share/sxm/baselines/phonetics/T000V054.psv.zip
/usr/share/sxm/baselines/phonetics/T001V011.psv.zip
/usr/share/sxm/baselines/phonetics/T006V011.psv.zip
/usr/share/sxm/baselines/phonetics/T003V003.psv.zip
/usr/share/sxm/baselines/phonetics/T004V000.psv.zip
/usr/share/sxm/baselines/phonetics/T002V000.psv.zip
/usr/share/sxm/baselines/movies/sxm_theatersbaseline23.pvn1.zip
/usr/share/sxm/baselines/movies/sxm_movieratingsv0.pvn1.zip
Please set FILES such that these items are packaged. Alternatively if they are unneeded, avoid installing them or delete them within do_install.
sxe: 55 installed and not shipped files. [installed-vs-shipped]
ERROR: sxe-0.1-r0 do_package: Fatal QA errors found, failing task.
ERROR: sxe-0.1-r0 do_package: Function failed: do_package
ERROR: Logfile of failure stored in: /home/local/SWTECNN/rkhairulin/imx-yocto-bspIII/build-wayland-imx8qmmekII/tmp/work/aarch64-poky-linux/sxe/0.1-r0/temp/log.do_package.32253
ERROR: Task (/home/local/SWTECNN/rkhairulin/imx-yocto-bspIII/sources/meta-sxe/recipes-example/example/sxe_0.1.bb:do_package) failed with exit code '1'
我该如何解决这个问题?我应该在 ricpe 中添加什么?
默认情况下,配方名称的包包含以下文件(参见here):
FILES_${PN} = "${bindir}/* ${sbindir}/* ${libexecdir}/* ${libdir}/lib*${SOLIBS} \
${sysconfdir} ${sharedstatedir} ${localstatedir} \
${base_bindir}/* ${base_sbindir}/* \
${base_libdir}/*${SOLIBS} \
${base_prefix}/lib/udev/rules.d ${prefix}/lib/udev/rules.d \
${datadir}/${BPN} ${libdir}/${BPN}/* \
${datadir}/pixmaps ${datadir}/applications \
${datadir}/idl ${datadir}/omf ${datadir}/sounds \
${libdir}/bonobo/servers"
因此 /usr/share/sxm 和 /sxe 中的文件在 ${D}
部署文件夹中创建,但它们未添加到任何包中。
您必须将此行添加到您的食谱中(参见 here):
FILES_${PN} += "/sxe ${datadir}/sxm"
注意 /usr/share 定义为 ${datadir}
如果您不需要这些文件,您可以从 ${D}
:
do_install_append(){
rm -r ${D}/sxe
rm -r ${D}/${datadir}/sxm
}
你必须告诉 bitbake 文件应该放到哪个包中。大概是这样的
FILES_sxe += " \
{root_prefix}/sxe \
{datadir}/sxe \
"
话虽如此,FHS 强烈反对将某些内容直接放在 /
下。有关预定义前缀和目录的更多信息,请查看 poky/meta/conf/bitbake.conf