Russian Qt Forum

Qt => Вопросы новичков => Тема начата: QuAzI от Ноябрь 29, 2012, 10:00



Название: win32 linguist не даёт собраться
Отправлено: QuAzI от Ноябрь 29, 2012, 10:00
tr.commands = lupdate $$_PRO_FILE_
  POST_TARGETDEPS += tr
  QMAKE_EXTRA_TARGETS += tr
Код:
D:\QtSDK\Desktop\Qt\4.8.3\mkspecs\features\device_config.prf(12):-1: ошибка: Querying unknown property CROSS_COMPILE

А если поправить на
tr.commands = lupdate $$_PRO_FILE_ && lrelease $$_PRO_FILE_
ещё моднее
Код:
D:\QtSDK\Desktop\Qt\4.8.3\mkspecs\features\device_config.prf(12):-1: ошибка: Querying unknown property CROSS_COMPILEЌҐўҐа­® § ¤ ­® Ё¬п Ї ЇЄЁ.
E:\qu\devel\POST000-Converter\POST000-Converter.pro(78):-1: ошибка: Using OS scope before setting MAKEFILE_GENERATORE:/qu/devel/POST000-Converter/POST000-Converter.pro(79): Using OS scope before setting MAKEFILE_GENERATORE:/qu/devel/POST000-Converter/POST000-Converter.pro(83): Using OS scope before setting MAKEFILE_GENERATORE:/qu/devel/POST000-Converter/POST000-Converter.pro(87): Using OS scope before setting MAKEFILE_GENERATORE:/qu/devel/POST000-Converter/POST000-Converter.pro(98): Querying unknown property QT_VERSIONE:/qu/devel/POST000-Converter/POST000-Converter.pro(101): Using OS scope before setting MAKEFILE_GENERATORE:/qu/devel/POST000-Converter/POST000-Converter.pro(111): Using OS scope before setting MAKEFILE_GENERATORE:/qu/devel/POST000-Converter/POST000-Converter.pro(112): Using OS scope before setting MAKEFILE_GENERATORE:/qu/devel/POST000-Converter/POST000-Converter.pro(118): Using OS scope before setting MAKEFILE_GENERATORE:/qu/devel/POST000-Converter/POST000-Converter.pro(119): Using OS scope before setting MAKEFILE_GENERATOR
Строка на которую тут начинает материться без лингвиста отрабатывает как часики, содержит
win32: USERNAME = $$system( echo %USERNAME% )
и вроде как отрабатывать должна до POST_TARGETDEPS


Название: Re: win32 linguist не даёт собраться
Отправлено: twp от Ноябрь 29, 2012, 13:25
а разве не нужно указывать еще tr.target? и по идее это же надо указать в PRE_TARGETDEPS


Название: Re: win32 linguist не даёт собраться
Отправлено: QuAzI от Ноябрь 29, 2012, 14:16
Тогда бы не работало это
Код:
win32: {
WIN_PWD=$$replace(PWD, /, \\)
WIN_OUT_PWD=$$replace(OUT_PWD, /, \\)
}

# Генерация html-документации
win32: docs.commands = cd $$WIN_PWD && \"%ProgramFiles%\\doxygen\\bin\\doxygen.exe\" $$WIN_PWD\\Doxyfile
unix:  docs.commands = doxygen $$PWD/Doxyfile

# Автотестирование кода в cppcheck
win32: tests.commands = \"%ProgramFiles%\\Cppcheck\\cppcheck.exe\" --enable=all --platform=win32W --error-exitcode=1 $$WIN_PWD
unix:  tests.commands = cppcheck --enable=all --error-exitcode=1 $$PWD

release {
  POST_TARGETDEPS += tests docs
  QMAKE_EXTRA_TARGETS += tests docs
}
А PRE_TARGETDEPS вообще указывает выполнять задачу ДО сборки основного проекта, в то время как POST_TARGETDEPS отрабатывает обычно лишь после успешной сборки исходников.


Название: Re: win32 linguist не даёт собраться
Отправлено: kambala от Ноябрь 29, 2012, 14:29
а если вызывать команды через @call? @call lupdate ...


Название: Re: win32 linguist не даёт собраться
Отправлено: QuAzI от Ноябрь 29, 2012, 14:36
Попробовал. Фигня не исчезла :(
Qt Creator 2.5.84 (2.6.0-rc)
Qt 4.8.3 MinGW
Ничего не пересобирал, ставил то, что на оф.сайте выложили. Самое забавное что раньше как-то так работало. Изначально такой вариант был подсказан тут же на форуме
http://www.prog.org.ru/index.php?topic=21023.msg144177#msg144177


Название: Re: win32 linguist не даёт собраться
Отправлено: Alex Custov от Ноябрь 29, 2012, 14:44
Ты кросскомпилируешь?


Название: Re: win32 linguist не даёт собраться
Отправлено: twp от Ноябрь 29, 2012, 14:45
Qt 4.8.3 MinGW
возможно проблема в этом - эта версия полна багов, нужно попробовать другую версию Qt


Название: Re: win32 linguist не даёт собраться
Отправлено: QuAzI от Ноябрь 29, 2012, 14:53
Ты кросскомпилируешь?
Вся сборка идёт на винде и для винды. Ставился через
qt-win-opensource-4.8.3-mingw.exe
qt-creator-windows-opensource-2.6.0.exe
И потом только в криэйторе указал, где и чем собирать. Хотя кросскомпилирование из FreeBSD под win (точнее под wine) тоже надо будет освоить.


Название: Re: win32 linguist не даёт собраться
Отправлено: QuAzI от Ноябрь 30, 2012, 12:19
http://mac.softpedia.com/progChangelog/Qt-Changelog-31030.html
Цитировать
What's new in Qt 4.8.3:
Add qmake CROSS_COMPILE variable via load(device_config)
Ну и собственно да, на 4.8.4 ничего не пролечилось и судя по всему надо искать как это обойти, т.к. "это не бага, это добавленная фича"


Название: Re: win32 linguist не даёт собраться
Отправлено: QuAzI от Ноябрь 30, 2012, 13:09
Код:
tr.commands = lupdate -silent $$_PRO_FILE_ && lrelease -silent $$_PRO_FILE_
Матерится
Цитировать
Неверно задано имя папки.
Could not find qmake configuration directoryCould not find qmake configuration f
ileUsing OS scope before setting MAKEFILE_GENERATORСистеме не удается найти указ
анный путь.
Системе не удается найти указанный путь.
Но собирается


Название: Re: win32 linguist не даёт собраться
Отправлено: malor от Октябрь 26, 2013, 22:04
При выполнении локализации я столкнулся с буквально следующим сообщением:

c:\Qt\qt-proj\TextFinder>lupdate TextFinder.pro
C:/Qt/qt-4.8.4/mkspecs/features/device_config.prf(13): Querying unknown property
 CROSS_COMPILEProject MESSAGE: Warning: unknown QT: widgetsUpdating 'TF_ru.ts'..
.
    Found 12 source text(s) (12 new and 0 already existing)
Updating 'TF_en.ts'...
    Found 12 source text(s) (12 new and 0 already existing)


Файлики TF_ru.ts и TF_ru.ts были созданы. Затем я в QtLinguist их открывал, и компилировал в qm-файлы.

Получается, ошибка не фатальна?

qt-4.8.4 / QtCreator 2.6.2


Название: Re: win32 linguist не даёт собраться
Отправлено: Alex Custov от Октябрь 26, 2013, 22:52
это не ошибка, это warning, т.к. lupdate не полностью умеет парсить pro файл. Ещё один warning который может от него видеть про кольцевые зависимости .h файлов, но это всё неважно. И зачем компилировать лингвистом, когда для этого предназначен lrelease?


Название: Re: win32 linguist не даёт собраться
Отправлено: malor от Октябрь 27, 2013, 00:11
AC>>И зачем компилировать лингвистом, когда для этого предназначен lrelease?

А для чего тогда пункт меню "Компилировать" сделан в QtLinguist ?


Название: Re: win32 linguist не даёт собраться
Отправлено: Alex Custov от Октябрь 27, 2013, 00:28
А для чего тогда пункт меню "Компилировать" сделан в QtLinguist ?

Наверное чтобы переводчики могли скомпилировать и отправить свой перевод


Название: linguist даёт собраться
Отправлено: malor от Октябрь 27, 2013, 00:44
Отправить куда ?


Название: Re: linguist даёт собраться
Отправлено: Alex Custov от Октябрь 27, 2013, 12:44
Отправить куда ?

Пользователям, например.


Название: собраться win32 linguist
Отправлено: malor от Октябрь 27, 2013, 12:52
А чем отправка qm-файла после компиляции в QtLinguist отличается от отправки qm-файла после компиляции утилитой lrelease ?


Название: Re: собраться win32 linguist
Отправлено: Alex Custov от Октябрь 27, 2013, 13:00
А чем отправка qm-файла после компиляции в QtLinguist отличается от отправки qm-файла после компиляции утилитой lrelease ?

Ничем. Только lrelease у переводчика может и не быть.