如何更新 CMake Qt 项目中的 *.ts(用于 Qt Linguist)文件?

Mir*_*ira 5 qt localization cmake qt-linguist

我找到了如何在 CMake 中使用 .ts 文件:

SET(TRANS localization/en_en.ts)
QT5_ADD_TRANSLATION(QM ${TRANS})
Run Code Online (Sandbox Code Playgroud)

(并添加到可执行文件中)。

当我从 Qt 菜单运行 lupdate 时,我得到了以下信息: lupdate warning: no TS files specified. Only diagnostics will be produced.

那么如何为一个简单的 CMake 项目更新 *.ts 呢?

Ori*_*ent 0

尝试使用以下内容:

file(GLOB TS_FILES "${PROJECT_SOURCE_DIR}/*.ts")

qt5_create_translation(QM_FILES
    ${PROJECT_SOURCE_DIR}
    ${TS_FILES}
    OPTIONS -source-language en_US -no-obsolete)

add_executable(${PROJECT_NAME} ${OS_BUNDLE} ${SOURCES} ${RESOURCES} ${QM_FILES})
Run Code Online (Sandbox Code Playgroud)

请注意,这QM_FILES应该位于目标的源列表中(${PROJECT_NAME}此处)。