繁体   English   中英

如何自动将Qt语言学家文件包含到CMake项目的Qt资源中?

[英]How to automatically include Qt Linguist files into Qt resources for the CMake project?

我使用CMake来构建具有国际化支持的Qt项目。 使用qt5_create_translation我可以在源目录中创建*.ts文件,并在构建目录中创建*.qm文件。

我想减少应该分发的文件数量。 将翻译文件:/translations/*.qm 。qm存储到Qt资源是straitforward解决方案。

但是在构建过程中,资源的名称是自动生成的,没有本机的方法可以将它们自动放置到*.qrc文件中。

如何使用add_custom_command或其他方法实现所需的目标?

Qt的qrc文件只是xml文件。 因此,您可以使用外部工具来添加它。

一个纯粹的cmake解决方案可以是:

  1. 创建一个名为@TRANS_FILE@的虚拟资源文件
  2. 将此文件添加到您的qrc文件
  3. 将翻译文件的名称提取到变量中。 不知道怎么做
  4. 使用cmake的configure_file替换虚拟资源名称

例:

set(TRANS_FILE ${NameOfTranslationFile})
configure_file(infile.qrc outfile.qrc @ONLY)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM