在构建gdb时,我试图将.gdbinit文件添加到文件系统的/ home / root中。
我制作了这个bbappend文件:gdb_8.0.bbappend
PACKAGECONFIG_append = " python"
FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}:"
SRC_URI += "file://.gdbinit"
FILES_${PN} += "/home/root/*"
do_install_append() {
install -d ${D}/home/root
install -m 0755 ${WORKDIR}/.gdbinit ${D}/home/root/.gdbinit
}
但是,在构建时,出现此错误:
ERROR: gdb-8.0-r0 do_package: QA Issue: gdb: Files/directories were installed but not shipped in any package:
/home
/home/root
/home/root/.gdbinit
Please set FILES such that these items are packaged. Alternatively if they are unneeded, avoid installing them or delete them within do_install.
gdb: 3 installed and not shipped files. [installed-vs-shipped]
我不明白为什么文件没有发货。
我肯定会错过一些东西,您有输入吗?
谢谢!
答案 0 :(得分:1)
通配符与隐藏文件不匹配。它类似于shell。只要在您的主目录中运行ls
,隐藏文件就不会列出。所以最好的方法是:
FILES_${PN} += "/home/root/.gdbinit"
我已经测试过,并且/home/root/.*
通配符也可以使用,但是它与shell中的父目录(..
)相匹配。它与OpenEmbedded中的父目录不匹配,但是我还是不会使用它。
顺便说一句,我也将考虑单独的配置方法。