Linux 在bitbake期间禁用do_package_qa
有没有办法在bitbake期间禁用Linux 在bitbake期间禁用do_package_qa,linux,build,yocto,bitbake,Linux,Build,Yocto,Bitbake,有没有办法在bitbake期间禁用do\u package\u qa步骤 实际上,我有一个预编译的二进制文件,我想复制到我的rootfs。我已经尝试过install以及我食谱中do\u install部分的cp。 在这两种情况下,我都遇到了QA问题,它抱怨libQt5Qml.so和libQt5Quick.so在RDEPENDS中找不到。 我尝试了疯狂跳过${PN},RDEPENDS${PN}和依赖来抑制错误,但我无法这样做。 有什么方法可以让我编辑我的食谱吗 配方 DESCRIPTION = &
do\u package\u qa
步骤
实际上,我有一个预编译的二进制文件,我想复制到我的rootfs。我已经尝试过install
以及我食谱中do\u install
部分的cp
。
在这两种情况下,我都遇到了QA问题,它抱怨libQt5Qml.so
和libQt5Quick.so
在RDEPENDS
中找不到。
我尝试了疯狂跳过${PN}
,RDEPENDS${PN}
和依赖
来抑制错误,但我无法这样做。
有什么方法可以让我编辑我的食谱吗
配方
DESCRIPTION = "..."
LICENSE = "CLOSED"
RDEPENDS_${PN} = "qtbase"
SRC_URI = "file://hello.c \
file://basic \
"
S = "${WORKDIR}"
do_compile() {
${CC} hello.c -o hello
}
do_install() {
install -d ${D}/opt/mybin/
install -m 0755 hello ${D}/opt/mybin/
install -m 0755 basic ${D}/opt/mybin/
}
FILES_${PN} = "/opt/mybin/"
INSANE_SKIP_${PN} = "ldflags"
错误
ERROR: my-binary-1.0-r0 do_package_qa: QA Issue: /opt/mybin/basic contained in package my-binary requires libQt5Qml.so.5(Qt_5), but no providers found in RDEPENDS_my-binary? [file-rdeps]
ERROR: my-binary-1.0-r0 do_package_qa: QA Issue: /opt/mybin/basic contained in package my-binary requires libQt5Quick.so.5(Qt_5), but no providers found in RDEPENDS_my-binary? [file-rdeps]
也许加上
RDEPENDS${PN}+=“libQt5Qml.so.5(Qt_5)libQt5Quick.so.5(Qt_5)”
根据您的配方,它将解决QA问题。让我们试试看
inase\u SKIP\u${PN}=“file rdeps”
可能有助于修复错误
报告的问题类似于下面的链接
显示您的配方以及错误消息将非常有帮助。@OleksandrKravchuk请检查
疯狂\u SKIP\u my-binary+=“file rdeps”
?但是,这个错误是有效的,因为如果您使它静音,您的rootfs实际上将不包含这个未版本化的qt库,并且您的二进制文件将无法执行。您可以创建一个指向qt版本库的符号链接,该库的命名方式与非版本库的命名方式相同,或者您可以使用patchelf修补二进制文件,并使其使用版本库。Inasane\u SKIP\u my-binary+=“file rdeps”
工作正常,但存在一些严重警告,但是我可以忽略这些警告,因为我知道所有必需的库都可以在我的目标中使用。我已经尝试过了,但是没有得到任何结果。RPROVIDES libQt5Qml.so.5(Qt_5)errorok,但是您的二进制文件需要这个库,所以您需要查看您的yocto构建系统上是否有这个libQt5Qml配方。似乎您没有它,因为如果配方存在,它将自动安装此二进制文件所需的依赖关系。如果没有配方存在,您需要在自定义层中实现一个新的配方。但是谷歌首先:)疯狂的跳过“${PN}+=“文件rdeps”
处理了一些严重的警告