LINUX.ORG.RU

cmake Qt5 translations

 , ,


0

1

Всем, привет! Прошу помочь. Хочу с помощью cmake генерировать qm файлы переводов и использовать их при запуске приложения из-под ide. Код:

file(GLOB_RECURSE translations ../*.ts)

QT5_CREATE_TRANSLATION(master_ru.qm ${translations})
QT5_ADD_TRANSLATION(master_ru.qm ${translations})
Такая запись ни к чему не приводит. Вместо master_ru.qm пробовал прописать полный путь в home (/home/username/master_ru.qm) - тот же результат. Файлы qm не нахожу.

У меня в проекте сделано вот так:

file(GLOB TRANSLATION_FILES ${CMAKE_CURRENT_SOURCE_DIR}/*.ts)

qt5_add_translation(TRANSLATION_QM ${TRANSLATION_FILES})
add_custom_target(translations DEPENDS ${TRANSLATION_QM})

Потом просто делаю make translations. Файлы создаются в каталоге сборки

XMs ★★★★★ ()
Последнее исправление: XMs (всего исправлений: 1 )
8 мая 2018 г.
Ответ на: комментарий от XMs

Сделал такую вещь:

option(UPDATE_TRANSLATION_SOURCES "Updates *.ts files" OFF)
if (UPDATE_TRANSLATION_SOURCES)
    qt5_create_translation(TRANSLATION_QM ${sources} ${TRANSLATION_FILES})
else(UPDATE_TRANSLATION_SOURCES)
    qt5_add_translation(TRANSLATION_QM ${TRANSLATION_FILES})
endif(UPDATE_TRANSLATION_SOURCES)
add_custom_target(translations DEPENDS ${TRANSLATION_QM})
Под linux работает lupdate

heaven__12 ()
Ответ на: комментарий от heaven__12

Да. Предполагается, что его дёргать надо только в случае изменения/добавления выводимого пользователю текста, в остальных случаях lupdate не нужен

XMs ★★★★★ ()
Ответ на: комментарий от heaven__12

Прикольно, надо будет себе утащить

XMs ★★★★★ ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.