使用CMake编译Qt5:如何找到Qt翻译目录?

4

我目前正在将我的应用程序移植到Qt5平台上。我使用CMake作为构建系统。 在Qt4中,我使用QT_TRANSLATIONS_DIR变量来将预编译的Qt翻译文件复制到目标目录中。然而,在Qt5中并没有定义这些特定的变量。我知道下面这个命令可以帮助我实现这个功能。

qmake -query QT_INSTALL_TRANSLATIONS

这个命令可以给我正确的Qt翻译安装路径。我想使用它,但是现在我不知道如何获取qmake可执行文件的路径。我尝试过使用

Qt5Core_QMAKE_EXECUTABLE

变量,但它给了我“Qt5::qmake”,这不是一个正确的可执行文件。

我想要看到的是Qt每个目标的属性列表,以了解如何获取特定的变量,但我在互联网上找不到类似的东西。 CMake文档无法回答我的问题。

如何使用CMake和Qt5获取qt翻译的路径? 提前感谢您的答复。

1个回答

4

好的,我找到了解决方案。要获取当前Qt前缀的qmake可执行文件位置,您可以使用以下命令:

get_target_property (QT_QMAKE_EXECUTABLE Qt5::qmake IMPORTED_LOCATION)

然而,我发现在文档中没有找到它的任何信息,这让我感到奇怪。

稍微扩展一下...QT_QMAKE_EXECUTABLE是存储生成的完整路径 <path-to>/qmake 的变量。此外,Qt5::qmake 可以选择替换为 ${Qt5Core_QMAKE_EXECUTABLE},而 ${Qt5Core_QMAKE_EXECUTABLE} 则在 Qt5CoreConfigExtras.cmake 中设置。 - tresf

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接