Windows
Заранее договоримся, что непосредственно файлы библиотеки QwtPolar будут собираться в обеих конфигурациях релизной и отладочной, плагин для дизайнера форм в релизной конфигурации (плагин, собранный в отладочной конфигурации, дизайнер не воспринимает), примеры, поставляемые с библиотекой, в качестве демонстрации в отладочной конфигурации. Предполагается, что у Вас установлена версия 4.8.2 библиотеки Qt (самая свежая на момент написания статьи) или старше. От более ранних версий ее отличает конфигурация сборки по умолчанию, более подробно об этом можно почитать здесь. Поэтому в инструкциях по установке присутствуют вариации.
Для определенности будем считать, что у Вас уже установлена библиотека Qwt 5.2.2 в папку C:/Qt/qwt-5.2.2 или Qwt 6.0.1 в папку C:/Qt/qwt-6.0.1 (версии на момент написания статьи). Если еще нет, порядок установки библиотеки Qwt можно посмотреть в соответствующей статье. Установка QwtPolar для Qwt версий 5.x.x и 6.x.x немного различается, поэтому во избежание путаницы инструкции для каждого из этих вариантов даются отдельно.
Для Qwt 5.x.x
1. Скачиваем с сайта разработчика архив
qwtpolar-0.1.0.zip
(именно эта версия совместима с Qwt 5.x.x)
2. Распаковываем архив в какую либо временную папку, например, в D:\TEMP.
3. Создаем файл D:\TEMP\qwtpolar-0.1.0\qwt.pri со следующим содержимым
QWT_VER = 5.2.2
QWT_PATH = C:/Qt/qwt-$${QWT_VER}
QWT_INC_PATH = $${QWT_PATH}/include
DEBUG_SFX =
CONFIG(debug,debug|release) {
DEBUG_SFX = d
}
QWT_LIB = qwt$${DEBUG_SFX}5
INCLUDEPATH += $${QWT_INC_PATH}
LIBS += -L$${QWT_PATH}/lib -l$${QWT_LIB}
4. Правим файл D:\TEMP\qwtpolar-0.1.0\qwtpolar.pri так, как показано ниже
5. Правим файл D:\TEMP\qwtpolar-0.1.0\src\src.pro
сразу после строки "include( $${QWT_POLAR_ROOT}/qwtpolar.pri
)" вставляем строки
CONFIG += debug_and_release
CONFIG += build_all
include( $${QWT_POLAR_ROOT}/qwt.pri )
6. Правим файл D:\TEMP\qwtpolar-0.1.0\designer\designer.pro
если у Вас версия Qt более ранняя, чем 4.8.2, сразу после строки "include ( $${QWTPOLAR_ROOT}/qwtpolar.pri )" вставляем строку
CONFIG += release
для всех версий Qt там же добавляем строку
include ( $${QWTPOLAR_ROOT}/qwt.pri )
ВНИМАНИЕ! Переменная QWTPOLAR_ROOT в файле qwtpolar.pro отличается от похожей переменной QWT_POLAR_ROOT из файла src.pro.
7. Правим файл D:\TEMP\qwtpolar-0.1.0\examples\examples.pri
если у Вас версия Qt 4.8.2, сразу после строки "include( $${QWT_POLAR_ROOT}/qwtpolar.pri )" вставляем строку
CONFIG += debug
если у Вас версия Qt 4.8.x, там же добавляем строку
CONFIG += declarative_debug
для всех версий Qt там же добавляем строку
include( $${QWT_POLAR_ROOT}/qwt.pri )
для всех версий Qt в строке "DESTDIR = $${QWT_POLAR_ROOT}/examples/bin$${SUFFIX_STR}" убираем суффикс $${SUFFIX_STR}.
Замечание. Переменная QWT_POLAR_ROOT в файле examples.pri такая же, как и в файле src.pro.
8. Запускаем Qt 4.8.2 Command Prompt (см. группу ярлыков библиотеки Qt в меню Пуск, у Вас может быть и другая версия).
9. Переходим в каталог, содержащий распакованную библиотеку
D:
cd TEMP\qwtpolar-0.1.0
и вводим команды
qmake qwtpolar.pro -r -spec win32-g++
mingw32-make
mingw32-make install
Сборка выполнится быстрей, если применяется распараллеливание компиляции (см. соответствующую статью). По окончании сборки и копирования файлов в каталоге C:\Qt должна появиться папка qwtpolar-0.1.0.
10. Дописываем в переменную среды Path путь
C:\Qt\qwtpolar-0.1.0\lib
Для этого кликаем правой кнопкой мыши по значку Мой компьютер, выбираем пункт контекстного меню Свойства, открываем вкладку Дополнительно, кликаем кнопку Переменные среды, в списке переменных выделяем переменную Path и нажимаем кнопку Изменить. Прописав через точку с запятой вышеуказанный путь, нужное число раз нажимаем OK.
11. Для того, чтобы единственный виджет установленной библиотеки был доступен в дизайнере форм, копируем содержимое папки D:\TEMP\qwtpolar-0.1.0\designer\plugins\designer в папку C:\Qt\qt-4.8.2\plugins\designer (у Вас может быть и другая версия библиотеки Qt).
На этом установка завершена.
Для Qwt 6.x.x
1. Скачиваем с сайта разработчика архив
qwtpolar-1.0.1.zip
(версия на момент написания статьи)
2. Распаковываем архив в какую либо временную папку, например, в D:\TEMP.
3. Создаем файл D:\TEMP\qwtpolar-1.0.1\qwt.pri со следующим содержимым
QWT_VER = 6.0.1
QWT_PATH = C:/Qt/qwt-$${QWT_VER}
QWT_INC_PATH = $${QWT_PATH}/include
DEBUG_SFX =
CONFIG(debug,debug|release) {
DEBUG_SFX = d
}
QWT_LIB = qwt$${DEBUG_SFX}
INCLUDEPATH += $${QWT_INC_PATH}
LIBS += -L$${QWT_PATH}/lib -l$${QWT_LIB}
4. Правим файл D:\TEMP\qwtpolar-1.0.1\qwtpolarconfig.pri
исправляем младшую часть номера версии в строке "QWT_POLAR_VER_PAT = 0" (1 вместо 0);
в строке "QWT_POLAR_INSTALL_PREFIX = C:/QwtPolar-$$QWT_POLAR_VERSION" прописываем свой каталог установки
QWT_POLAR_INSTALL_PREFIX = C:/Qt/qwtpolar-$$QWT_POLAR_VERSION
убираем значок комментария в строке "# QWT_POLAR_CONFIG += QwtPolarExamples".
В файле D:\TEMP\qwtpolar-1.0.1\qwtpolarbuild.pri комментируем строки
CONFIG += debug_and_release
CONFIG += build_all
5. Правим файл D:\TEMP\qwtpolar-1.0.1\src\src.pro
сразу после строки "include( $${QWT_POLAR_ROOT}/qwtpolarbuild.pri
)" вставляем строки
CONFIG += debug_and_release
CONFIG += build_all
include( $${QWT_POLAR_ROOT}/qwt.pri )
6. Правим файл D:\TEMP\qwtpolar-1.0.1\designer\designer.pro
если у Вас версия Qt более ранняя, чем 4.8.2, сразу после строки "include ( $${QWT_POLAR_ROOT}/qwtpolarbuild.pri )" вставляем строку
CONFIG += release
для всех версий Qt там же добавляем строку
include ( $${QWT_POLAR_ROOT}/qwt.pri )
7. Правим файл D:\TEMP\qwtpolar-1.0.1\examples\examples.pri
если у Вас версия Qt 4.8.2, сразу после строки "include( $${QWT_POLAR_ROOT}/qwtpolarbuild.pri )" вставляем строку
CONFIG += debug
если у Вас версия Qt 4.8.x, там же добавляем строку
CONFIG += declarative_debug
для всех версий Qt там же добавляем строку
include( $${QWT_POLAR_ROOT}/qwt.pri )
для всех версий Qt в строке "DESTDIR = $${QWT_POLAR_ROOT}/examples/bin$${SUFFIX_STR}" убираем суффикс $${SUFFIX_STR}.
8. Запускаем Qt 4.8.2 Command Prompt (см. группу ярлыков библиотеки Qt в меню Пуск, у Вас может быть и другая версия).
9. Переходим в каталог, содержащий распакованную библиотеку
D:
cd TEMP\qwtpolar-1.0.1
и вводим команды
qmake qwtpolar.pro -r -spec win32-g++
mingw32-make
mingw32-make install
Сборка выполнится быстрей, если применяется распараллеливание компиляции (см. соответствующую статью). По окончании сборки и копирования файлов в каталоге C:\Qt должна появиться папка qwtpolar-1.0.1.
10. Дописываем в переменную среды Path путь
C:\Qt\qwtpolar-1.0.1\lib
Для этого кликаем правой кнопкой мыши по значку Мой компьютер, выбираем пункт контекстного меню Свойства, открываем вкладку Дополнительно, кликаем кнопку Переменные среды, в списке переменных выделяем переменную Path и нажимаем кнопку Изменить. Прописав через точку с запятой вышеуказанный путь, нужное число раз нажимаем OK.
11. Для того, чтобы единственный виджет установленной библиотеки был доступен в дизайнере форм, копируем содержимое папки D:\TEMP\qwtpolar-1.0.1\designer\plugins\designer в папку C:\Qt\qt-4.8.2\plugins\designer (у Вас может быть и другая версия библиотеки Qt).
На этом установка завершена.
Замечание.
Выполнение пункта 11 гарантирует доступность виджета библиотеки QwtPolar только в дизайнере форм, поставляемом с библиотекой Qt (см. группу ярлыков библиотеки Qt в меню Пуск), на панели инструментов должна появиться группа виджетов, изображенная на рисунке
Если же открыть какую-либо форму дизайнером, интегрированным в Qt Creator, то данная группа виджетов на панели инструментов отсутствует. Эта проблема обсуждается на форумах, например, здесь. Причиной называют то, что Qt Creator, поставляемый в инсталяционных файлах, собран с помощью Microsoft Visual C++, и плагины, собранные с помощью MinGW, он не понимает. Все встанет на свои места, если пересобрать Qt Creator из исходников, о том как это сделать читайте в посвященной этому вопросу статье.