RCC:'resource.qrc'出错:找不到文件'* .png'

问题描述 投票:4回答:1

我在docker容器(archlinux)上使用qt的rcc编译资源文件时遇到问题。我正在尝试交叉编译一个mingw --host机器

$ cat resource.qrc
<!DOCTYPE RCC><RCC version="1.0">
    <qresource >
        <file>images/small.png</file>
    </qresource>
</RCC>
$ ls -lR
.:
total 8
drwxr-xr-x 2 devel devel 4096 Jul  5 15:32 images
-rw-r--r-- 1 devel devel  106 Jul  5 15:35 resource.qrc

./images:
total 20
-rw-r--r-- 1 devel devel 15511 Apr 28  2010 small.png
$ rcc resource.qrc 
RCC: Error in 'resource.qrc': Cannot find file 'images/small.png'

相同的命令在我的OSX主机上运行正常。 ((

任何帮助,将不胜感激

qt docker makefile qt5 mingw-w64
1个回答
5
投票

我遇到过类似的问题;事实证明,这是几个因素的组合。 Qt 5.10+想要使用statx系统调用,但是:

  • 版本18.04之前的Docker不在libseccomp的系统调用白名单中包含此系统调用(因此您必须提供自己的seccomp配置)
  • 即使使用Docker 18.04或更高版本,您仍然需要最新版本的libseccomp(2.3.3或更高版本,例如当前的Debian或Ubuntu版本未附带),因为旧版本无法理解白名单中的statx系统调用条目。

如果无法升级其中任何一个组件,如果您信任Docker容器中的构建环境,则可以尝试以下解决方法:将参数--security-opt seccomp:unconfined添加到docker命令行。

进一步阅读的资源:

© www.soinside.com 2019 - 2024. All rights reserved.