S.C*_*sen 2 openembedded bitbake
我正在为openembedded-classic编写openembedded/bitbake配方.关于keyutils的我的食谱RDEPENDS,一切似乎都有效,除了一件事:我想在keyutils包安装的/etc/request-key.conf文件中附加一行.所以我在配方中添加了以下内容:
pkg_postinst_${PN} () {
echo 'create ... more stuff ..' >> ${sysconfdir}/request-key.conf
}
Run Code Online (Sandbox Code Playgroud)
但是,我生成的图像中缺少预期添加的行.update-rc.d如果这有任何区别,我的食谱会继承.
我的主要问题是:我如何调试这个?目前我正构建一个完整的rootfs图像,然后在其中进行搜索,看看是否显示更改.当然有更好的方法吗?
更新: 将食谱更改为:
pkg_postinst_${PN} () {
echo 'create ... more stuff ...' >> ${D}${sysconfdir}/request-key.conf
}
Run Code Online (Sandbox Code Playgroud)
但仍然没有运气.
postinst 脚本在 root 时间运行,因此 ${sysconfdir} 是主机上的/etc 。使用 $D${sysconfdir} 写入正在生成的 rootfs 内的文件。
据我所知,postinst在创建rootfs时运行,并且只有在rootfs失败时才首次启动.
所以有一种简单的方法来执行只有第一次启动的东西.请检查$D,如下:
pkg_postinst_stuff() {
#!/bin/sh -e
if [ x"$D" = "x" ]; then
# do something at first boot here
else
exit 1
fi
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2845 次 |
| 最近记录: |