yocto FILES_${PN}

最近在使用yocto添加自己的编译代码时,遇到了一个问题。报错如下:

ERROR: zm-bsp-0.1-r0 do_package: QA Issue: zm-bsp: Files/directories were installed but not shipped in any package:

网上查了很多信息,都没有解决我的问题,后面找到了一篇博客(源地址忘了),里面淡淡的提了一下FILES_${PN}似乎和安装位置有关,后续的安装路径似乎是从FILES_${PN}里面选择的。如果FILES_${PN}里面没有对应的安装路径,就会报这个错。

所以我就添加了如下代码:

FILES_${PN} += "${base_sbindir} ${sysconfdir} ${base_libdir}"

至此,完整解决了我的问题。

我的完整bb内容如下:

LICENSE          = "CLOSED"

PR = "r0"

FILESEXTRAPATHS_prepend := "${THISDIR}:"

SRC_URI = "file://script"

S = "${WORKDIR}/script"


FILES_${PN} += "${base_sbindir} ${sysconfdir} ${base_libdir}"


do_install () {
	install -d ${D}/${base_sbindir}
	install -d ${D}/${base_libdir}/systemd/system/
	install -d ${D}/${sysconfdir}/systemd/system/multi-user.target.wants/
	install -m 0644 vlan.service  ${D}/${base_libdir}/systemd/system/
	install -m 0755 vlan.sh  ${D}/${base_sbindir}
	ln -s /lib/systemd/system/vlan.service ${D}/${sysconfdir}/systemd/system/multi-user.target.wants/vlan.service
}

sysconfdir:对应嵌入式/etc目录

base_sbindir:对应嵌入式/sbin目录

base_libdir:对应嵌入式/lib目录

sbindir:对应嵌入式/usr/sbin目录

libdir:对应嵌入式/usr/lib目录

注:上面的目录在我这里可能是这样的对应方式,具体实际的对应方式,需要自己去验证。查看模块编译完成后的image目录就能得到对应关系。

  • 1
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

monkey_llll

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值