Qt 如何在Sailfish OS项目的RPM包中添加文件?
我正在尝试构建一个Qt 如何在Sailfish OS项目的RPM包中添加文件?,qt,build,rpm,sailfish-os,mer,Qt,Build,Rpm,Sailfish Os,Mer,我正在尝试构建一个Sailfish OS应用程序,我需要使用*.wav文件,这些文件将通过*.rpm包分发。在我的例子中,这些文件将放在/usr/share/[application\u name]/sounds/*中。如何相应地设置*.pro和*.yamp文件?这本身不是RPM问题:您似乎在问如何配置 如果您使用*.pro和*.yamp交付内容,请通过*.pro和*.yamp提交您的应用程序 *.rpm软件包 打包的答案是:完全相同地修补配置文件 就好像是手动安装*.wav文件一样(即不是通过
Sailfish OS
应用程序,我需要使用*.wav
文件,这些文件将通过*.rpm
包分发。在我的例子中,这些文件将放在/usr/share/[application\u name]/sounds/*
中。如何相应地设置*.pro
和*.yamp
文件?这本身不是RPM问题:您似乎在问如何配置
如果您使用*.pro和*.yamp交付内容,请通过*.pro和*.yamp提交您的应用程序
*.rpm软件包
打包的答案是:完全相同地修补配置文件
就好像是手动安装*.wav文件一样(即不是通过*.rpm)
您需要将*.wav内容复制到%buildroot树中
用于暂存要包含在包中的文件以及
修改了*.pro和*.yamp内容。要包含在中的所有文件
*.rpm包将需要在%文件清单中准确提及
当它们要安装时(即没有用于
我终于找到了答案!
我要感谢该项目的业主:
从该项目的
.pro
和.yaml
文件中,我了解了如何部署这些文件。首先,我们声明该常量:DEPLOYMENT\u PATH=/usr/share/$${TARGET}
,它似乎包含/usr/share/[appname]
的路径。接下来,我们定义某种类型的变量(TODO
:找到更详细的解释)。第一个的定义设置了文件的路径,例如,data.files=data
(第二个data
是文件夹)。接下来,我们将data.path
设置为$${DEPLOYMENT\u path}
。我们列出了其他_文件中的所有文件
,并将设置(在本例中为数据
)添加到安装
。现在,我们已经完成了.pro
文件,我们移动到.rpm
的.yaml
文件,并添加到文件的必要行:
部分,在我们的例子中,-'%{u datadir}/%{name}/data'
,最后是我们需要添加的文件夹<代码>待办事项:对于更有经验的人,请提供更详细的答案。您仔细检查了吗?可能会有帮助。事实上,问题在于整体部署这些*.wav,我找不到有关如何执行此操作的信息。到目前为止,我已经将sounds文件夹复制到项目的根目录中,并且在.pro文件中,我已经将“sounds/[每个文件一个接一个]”添加到其他_文件中,就像在yaml中,在文件类别中-“%${U datadir}/%{name}/sounds/[每个文件一个接一个]”,但是我几乎可以肯定这是不正确的,尽管我找不到正确的方法。如何正确设置这些文件以进行部署?以下是如何将文件添加到*.rpm包:1)在*.spec顶部添加SourceN:指令(适当选择N)。2) 在%install部分中,您需要将文件复制到%buildroot暂存区域,创建任何缺少的目录。3) 在%files清单中添加*.wav文件,基本上是您复制到的路径,没有前导%BuildRoot。复制行应该看起来像“cp%{SOURCEn}%{build root}/path/to/somewhere/sounds”,其中n==n(即一些数字,选择适当以避免与其他源代码:指令冲突)抱歉,我知道*.rpm打包,不是旗鱼配置。是的,我做了很多次。从中可以看出,.rpf文件是主要的写文件。此外,尽管这篇文章正如预期的那样写得很好,但它可能会更好。至少,我仔细阅读了它,仍然无法回答我的问题。