Project

General

Profile

Препроцессор QML

Добавление этапов сборки и очистки

В среде Qt Creator открываем вкладку Projects (Проекты) и добавляем новый Build Step (Этап сборки) - Custom Process Step (Особый) со следующими параметрами:

  • Command (Команда) : make

  • Working Directory (Рабочий каталог) : %{sourceDir}

  • Comand arguments (Параметры комманды) : -f preprocess-qml.mk -e PLATFORM=platform

Вместо platform указываем целевую платформу (symbian или meego)

Там же добавляем новый Clean Step (Этап очистки) - Custom Process Step (Особый) со следующими параметрами:

  • Command (Команда) : make

  • Working Directory (Рабочий каталог) : %{sourceDir}

  • Comand arguments (Параметры комманды) : -f preprocess-qml.mk clean

Добавление .qml файлов в проект

Добавлять новые qml-файлы в проект следует в корневую папку исходников. Однако в файле ресурсов путь к ним должен быть написан следующим образом: .qml/mainwindow.qml, т. е. так, как если бы эти qml-файлы находились в папке .qml. Несмотря на то, что изначально их там нет, они будут сгенерированы скриптом автоматически на этапе сборки.

Внимание! Ни в коем случае не сохраняйте в системе контроля версий файлы, которые будут созданы в каталоге .qml!

Использование в qml-файлах

В qml-файле строчки после которых стоит //@symbian или //@meego будут видны только на соответствующих платформах.

Т.е. следующий код

import com.nokia.symbian 1.0 //@symbian
import com.nokia.meego 1.0 //@meego

означает, что при сборке для платформы Symbian будет подключаться только библиотека com.nokia.symbian, а при сборке для платформы MeeGo только com.nokia.meego.

Замечание.

На самом деле на этапе выполнения скрипта, в папку .qml копируются исходные qml-файлы в которых отсутствуют строчки, помеченные //@platform, где platform - любая платформа, отличная от той, что была указана в аргументах команды make на этапе добавления этапов сборки и очистки.

Примечание (работа в MS Windows)

Несмотря на то, что разработка под MS Windows категорически не рекомендуется, возможно использовать данный инструмент и в этой операционной системе.

Для начала придется установить mingw и msys. Mingw поставляется вместе с Qt SDK, если он у Вас не скачан, то можно докачать его при помощи Maintance Tool входящей в состав Qt SDK. Для установки msys проще всего воспользоваться инструкциями отсюда: http://blog.adtl.cz/2010/09/08/install-mingw-and-msys/ . Инструкции выполнять со слов "Для ленивых добавил готовую сборку MSYS." и до конца (Subversion устанавливать не надо). Будьте внимательны! На этапе выполнения скрипта pi.bat и добавления путей для msys и mingw вводите местонахождение mingw поставляемого вместе с Qt SDK: Path_to_Qt_SDK\mingw

При добавлении новых этапов сборки и очистки, в поле Command указываем путь к make.exe входящему в msys (например C:\msys\bin\make.exe).