Главная · Все классы · Основные классы · Классы по группам · Модули · Функции

[Предыдущая: Запуск qmake] [Содержание] [Следующая: Продвинутое использование qmake]

Примечания для платформ

Многие кросс-платформенные проекты могут обрабатываться базовыми конфигурационными средствами qmake'а. На некоторых платформах получения преимуществ от платформо-зависимых возможностей иногда полезно или даже необходимо. qmake известно о многих из этих возможностей, и к ним можно получить доступ через специальные переменные, которые имеют эффект только на платформах, к которым они относятся.

Mac OS X

Возможности, специфичные для этой платформы, включают в себя поддержку создания универсальных двоичных файлов, каркасов и пакетов.

Бинарные пакеты и пакеты с исходными кодами

Версия qmake, поставляемая в пакетах исходных кодов, конфигурируется слегка по-другому по сравнению с поставляемой в бинарных пакетах в которых использует разные спецификации функций. Пакет с исходными кодами обычно использует спецификацию macx-g++, бинарный пакет обычно конфигурируется для использования спецификации macx-xcode.

Пользователи каждого пакета могут поменять эту конфигурацию запуская qmake с опцией -spec (для получения дополнительной информации смотрите Запуск qmake). Это позволяет, например, использовать qmake из бинарного пакета для создания Make-файла в каталоге проекта с помощью следующего вызова командной строки:

 qmake -spec macx-g++

Использование каркасов (Frameworks)

qmake способен автоматически генерировать правила сборки для компоновки вместе с каркасами в стандартном каталоге каркасов, расположенном на Mac OS X в /Library/Frameworks/.

Каталоги, отличающиеся от стандартного каталога каркасов, необходимо задать системе сборки, и достигается это добавлением опций компоновщика в переменную QMAKE_LFLAGS, как показано в следующем примере:

 QMAKE_LFLAGS += -L/path/to/framework/directory/

Сам каркас компонуется с добавлением опций -framework и именем каркаса в переменную LIBS:

 LIBS += -framework TheFramework

Создание пакета библиотек

Любая заданный проект библиотеки может быть сконфигурирован таким образом, что результирующий файл библиотеки помещается в пакет библиотек, готовый для развёртывания. Чтобы это сделать, настройте проект на использование шаблона lib и добавьте опцию lib_bundle к переменной CONFIG:

 TEMPLATE = lib
 CONFIG += lib_bundle

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

 FRAMEWORK_HEADERS.version = Versions
 FRAMEWORK_HEADERS.files = path/to/header_one.h path/to/header_two.h
 FRAMEWORK_HEADERS.path = Headers
 QMAKE_BUNDLE_DATA += FRAMEWORK_HEADERS

Здесь переменная FRAMEWORK_HEADERS - определяемая пользователем переменная, которая используется для определения заголовков, необходимых для использования отдельным каркасом. Добавление ее к переменной QMAKE_BUNDLE_DATA гарантирует, что информация об этих заголовках добавлена к набору ресурсов, которые будут установлены с пакетом библиотеки.

Для получения дополнительной информации о развёртывании приложений и библиотек смотрите Развёртывание приложения на Qt/Mac.

Создание каркасов (Frameworks)

В дополнение к библиотекам и пакетов библиотек (library bundles), qmake может генерировать правила для сборки каркасов.

Чтобы разрешить это, вам нужно сконфигурировать проект для генерации пакета библиотек как описано в предыдущем разделе:

     TEMPLATE = lib
     CONFIG += lib_bundle

Конечный продукт процесса сборки - фреёмворк, чье имя и версия заданы переменными QMAKE_FRAMEWORK_BUNDLE_NAME и QMAKE_FRAMEWORK_VERSION. По умолчанию, используемые для них значения получают из переменных TARGET и VERSION.

Для получения дополнительной информации о сборке и развёртывания фреймворков смотрите Развёртывание приложения на Qt/Mac.

Создание универсальных бинарных файлов

Для создания универсального бинарного файла вашего приложения вам нужно использовать версию Qt, которая была сконфигурирована с опцией -universal.

Поддерживаемые в бинарном файле архитектуры указываются в переменной CONFIG. Например, следующее присваивание заставит qmake сгенерировать правила сборки для создания универсального бинарного файла для архитектур PowerPC и x86:

     CONFIG += x86 ppc

Кроме того, разработчикам, использующим платформу на основе PowerPC, нужно установить переменную QMAKE_MAC_SDK. Более подробно этот процесс обсуждается в руководстве по развёртыванию в Mac OS X.

Создание и миграция проектов Xcode

В Mac OS X разработчики могут получить преимущество поддержки файлов проекта Xcode qmake'ом как описано в Qt/Mac присущая Mac OS X, запустив qmake для генерации проекта Xcode из имеющихся файлов проекта qmake. Например:

 qmake -spec macx-xcode project.pro

Обратите внимание на то, что если проект позднее перемещается на диск, qmake должен быть запущен снова для обработки файла проекта и создания нового файла проекта Xcode.

Windows

Возможности, специфичные для этой платформы, включают в себя поддержку создания файлов проекта Visual Studio и обработку файлов манифеста при развёртывании приложений Qt, разработанных с использованием Visual Studio 2005.

Создание файлов проекта Visual Studio

Разработчики, использующие Visual Studio для написания приложений Qt, могут использовать возможности интеграции с Visual Studio, предоставляемые в Коммерческих выпусках Qt и могут не беспокоиться о том, как управлять зависимостями проекта.

Однако, некоторым разработчикам может понадобиться импортировать существующий проект qmake в Visual Studio. qmake способен получить файл проекта и создать проект Visual Studio, который содержит всю необходимую информацию, требующуюся для среды разработки. Достигается это установкой qmake шаблона проекта равным или vcapp (для проектов приложений) или vclib (для проектов библиотек).

Также это можно установить используя опцию командной строки; например:

 qmake -t vcapp

При обновлении вашего файла проекта вам необходимо каждый раз запускать qmake для генерации обновленного проекта Visual Studio.

Файлы манифеста Visual Studio 2005

При развёртывании приложений Qt, собранных с использованием Visual Studio 2005, необходимо убедиться, что файл манифеста, созданный при компоновке приложения, обработан правильно. Это автоматически обрабатывается для проектов, которые генерируют DLL-ки, но необходимо явно разрешить встраивание манифеста для исполняемых файлов приложения с помощью следующего присваивания переменной CONFIG:

     CONFIG += embed_manifest_exe

Подробнее это обсуждается в руководстве по развёртыванию в Windows.

[Предыдущая: Запуск qmake] [Содержание] [Следующая: Продвинутое использование qmake]


Copyright © 2008 Trolltech Торговые марки
Qt 4.3.5