Russian Qt Forum
Ноябрь 23, 2024, 07:55
Добро пожаловать,
Гость
. Пожалуйста,
войдите
или
зарегистрируйтесь
.
Вам не пришло
письмо с кодом активации?
1 час
1 день
1 неделя
1 месяц
Навсегда
Войти
Начало
Форум
WIKI (Вики)
FAQ
Помощь
Поиск
Войти
Регистрация
Russian Qt Forum
>
Forum
>
Qt
>
Дополнительные компоненты
>
QWT. Помогите правильно установить
Страниц:
1
[
2
]
3
Вниз
« предыдущая тема
следующая тема »
Печать
Автор
Тема: QWT. Помогите правильно установить (Прочитано 39793 раз)
ритт
Гость
Re: QWT. Помогите правильно установить
«
Ответ #15 :
Апрель 08, 2008, 07:11 »
у меня, например, 3-4 сборки (2 сборки ветки 4.3 и 1-2 - ветки 4.4). и делаю тупо-тупо: скажем, кутэ в папках /opt/Qt/4.3.4{,-static} - делаю симлинку "4.3" на папку "4.3.4" и работаю. нужен статик - кидаю симлинку на соотв.папку
под вендами можно то же самое, но переносом вместо симлинков
кутэ не будет собираться 2-3 часа, если не собирать демки и экзамплы. ещё можно сказать -no-process при конфигурации
Записан
Tonal
Гость
Re: QWT. Помогите правильно установить
«
Ответ #16 :
Апрель 08, 2008, 07:33 »
Про статику и динамику - если кратко учи матчасть.
На пальцах, это примерно так можно объяснить:
Твой плагин написан с использованием Qt. В Qt есть масса общих вещей: тот же QApplication, система ресурсов, настройки стилей, настройки трансляции строк, плагинная система, система передачи сообщений и. т.п.
Понятно, что таких общих вещей должно быть по одной на
всё
приложение (можешь догадаться почему?).
Приложение у нас - designer - тоже написан с использованием Qt. Соответственно, он тоже использует те же общие вещи.
Для того, чтобы сохранить условия единственности, у нас 2е возможности:
1) Вынести эти общие вещи в dll-ки, и всем остальным - exe-шнику и плагинам использовать эти dll-ки.
Это называется динамическая сборка.
2) Собрать всё в один большой exe-шник, без dll-ек - тогда все общие вещи будут у него внутри, и все будут к ним обращаться.
Это статическая сборка, и плагины - как отдельные dll-ки в этом режиме невозможны (понятно почему?).
Единственное, что ты здесь можешь сделать, это изменить проект дизайнера так, чтобы он включал в себя и qwt и его плагин. :-)
P.S Те же самые соображения относятся и к рантайму языка, только общими вещами, в этом случае, являются менеджер памяти, таблица открытых файлов, состояние некоторых функций, и т.п.
P.P.S. Сейчас нельзя собрать Qt одновременно и в статику и в динамику в одном дереве исходников. Почему так - я не в курсе, но доводы в принципе понятны.
Записан
Mikhail
Программист
Offline
Сообщений: 587
Re: QWT. Помогите правильно установить
«
Ответ #17 :
Апрель 08, 2008, 07:50 »
Цитата: silart от Апрель 08, 2008, 06:46
Михаил, объясните пожалуйста, каким образом можно организовать 2 сборки Qt?
Они должны быть в разных папочках или как?
Вот у меня Qt находится в папке C:\Qt\4.2.2. Есть еще интенратор для MSVC.
Не будет ли интегратор ругаться на то что у меня 2 сборки?
Как все так круто замутить? И как переключаться между сборками?
Объясните пожалуйста.
Организация очень простая:
C:\Qt - общий каталог для всех версий
C:\Qt\434dmsvc - Qt версии 4.3.4 от компилированное компилятором MS C++ как shared
C:\Qt\434smsvc - Qt версии 4.3.4 от компилированное компилятором MS C++ как static
.....
.....
.....
Переход от одной Qt к другой при помощи изменения переменных окружения.
Есть и другой путь : я использую AnyQSoftIDE там все для этого заточено. Переменные окружения меняются для запускаемого процесса через меню.
Записан
silart
Гость
Re: QWT. Помогите правильно установить
«
Ответ #18 :
Апрель 08, 2008, 07:53 »
Цитата: Tonal от Апрель 08, 2008, 07:33
Про статику и динамику - если кратко учи матчасть.
На пальцах, это примерно так можно объяснить:
Твой плагин написан с использованием Qt. В Qt есть масса общих вещей: тот же QApplication, система ресурсов, настройки стилей, настройки трансляции строк, плагинная система, система передачи сообщений и. т.п.
Понятно, что таких общих вещей должно быть по одной на
всё
приложение (можешь догадаться почему?).
Приложение у нас - designer - тоже написан с использованием Qt. Соответственно, он тоже использует те же общие вещи.
Для того, чтобы сохранить условия единственности, у нас 2е возможности:
1) Вынести эти общие вещи в dll-ки, и всем остальным - exe-шнику и плагинам использовать эти dll-ки.
Это называется динамическая сборка.
2) Собрать всё в один большой exe-шник, без dll-ек - тогда все общие вещи будут у него внутри, и все будут к ним обращаться.
Это статическая сборка, и плагины - как отдельные dll-ки в этом режиме невозможны (понятно почему?).
Единственное, что ты здесь можешь сделать, это изменить проект дизайнера так, чтобы он включал в себя и qwt и его плагин. :-)
P.S Те же самые соображения относятся и к рантайму языка, только общими вещами, в этом случае, являются менеджер памяти, таблица открытых файлов, состояние некоторых функций, и т.п.
P.P.S. Сейчас нельзя собрать Qt одновременно и в статику и в динамику в одном дереве исходников. Почему так - я не в курсе, но доводы в принципе понятны.
Большое спасибо, Tonal, за подробное объяснение. Теперь стало все понятно.
Может из-за этого были проблемы, когда я у вас спрашивал про графический интерфейс внутри dll.
Записан
Tonal
Гость
Re: QWT. Помогите правильно установить
«
Ответ #19 :
Апрель 08, 2008, 08:07 »
Цитировать
Читайте книги - они рулез!
(c) Не помню чей
Записан
silart
Гость
Re: QWT. Помогите правильно установить
«
Ответ #20 :
Апрель 08, 2008, 08:08 »
Цитата: Mikhail от Апрель 08, 2008, 07:50
Переход от одной Qt к другой при помощи изменения переменных окружения.
Михаил, объясните пожалуйста, как и где можно изменить переменные окружения?
Я знаю что есть в студии файлик vcvars32.bat, который их определяет для MSVC.
И в Qt тоже есть подобный файл: qtvars.bat.
Чтобы изменить переменные окружения нужно для каждой версии Qt иметь отредактированный файл, да?
И когда собираешься поставить нужную версию просто его запустить?
Или я что-то не понимаю?
Записан
ритт
Гость
Re: QWT. Помогите правильно установить
«
Ответ #21 :
Апрель 08, 2008, 10:01 »
qtvars.bat нужен для мингва. у студии свой конфиг
предлагаю вытекающие вопросы задавать в разделе "сборка, настройка и т.д.", а эту ветку переместить в "кандидаты..."
Записан
Tonal
Гость
Re: QWT. Помогите правильно установить
«
Ответ #22 :
Апрель 08, 2008, 13:12 »
А можно и в FAQ.
Записан
ритт
Гость
Re: QWT. Помогите правильно установить
«
Ответ #23 :
Апрель 08, 2008, 14:59 »
ага...я бы "кратко про статику и динамику" в фак добавил
жаль только, что не этого самого фака
Записан
Mikhail
Программист
Offline
Сообщений: 587
Re: QWT. Помогите правильно установить
«
Ответ #24 :
Апрель 08, 2008, 16:05 »
Цитата: silart от Апрель 08, 2008, 08:08
Цитата: Mikhail от Апрель 08, 2008, 07:50
Переход от одной Qt к другой при помощи изменения переменных окружения.
Михаил, объясните пожалуйста, как и где можно изменить переменные окружения?
Я знаю что есть в студии файлик vcvars32.bat, который их определяет для MSVC.
И в Qt тоже есть подобный файл: qtvars.bat.
Чтобы изменить переменные окружения нужно для каждой версии Qt иметь отредактированный файл, да?
И когда собираешься поставить нужную версию просто его запустить?
Или я что-то не понимаю?
Пуск - Панель управления - Система - Дополнительно - Переменные среды
А там в системных переменных:
1). QTDIR c:\qt\
434dmsvc
- выделенное редактируешь под конкретный путь.
2). PATH ..........c:\qt\
434dmsvc
\bin - выделенное редактируешь под конкретный путь.
Просмотреть установленные переменные среды можно с помощью команды
SET
в сеансе DOC
Можно конечно и файлик подготовить и запускать его в сеансе DOC.
Вообще то это ну просто элементарные вопросы.
Как можно компилировать Qt без знания таких вещей, я не уж говорю о программировании.
Смотри файл Install из дистрибутива Qt ( Environment variables ).
Записан
silart
Гость
Re: QWT. Помогите правильно установить
«
Ответ #25 :
Сентябрь 24, 2008, 08:05 »
Всем добрый день!
Скачал я последнюю версию библиотеки: qwt-5.1.1. Все вроде скомпилировалось, и сама библиотека, и плагин для дизайнера. Скопировал я этот плагин в папку plugins\designer, но в дизайнере ничего не изменилось, новые виджеты не появились. При первом запуске после копирования плагина в окошке Help/About plugins написано что по указанному пути не найден модуль плагина. При последующих запусках написано что плагин неправильный. В документации было по этому поводу написано, что проблемы могут возникнуть если туда скопируешь debug-версию плагина, но я копировал release версию. Еще я саму библиотеку копировал в папку bin самой Qt - тоже не помогло. Есть какие-нибудь мысли на этот счет?
Записан
Karl-Philipp
Гость
Re: QWT. Помогите правильно установить
«
Ответ #26 :
Сентябрь 24, 2008, 09:58 »
Чем компилировали?
Если VS, то поиск по форуму - the best
http://www.prog.org.ru/index.php?topic=7343.msg37494#msg37494
Записан
Admin
Administrator
Джедай : наставник для всех
Offline
Сообщений: 1988
Re: QWT. Помогите правильно установить
«
Ответ #27 :
Сентябрь 24, 2008, 10:11 »
я QT статическое и динамическое организую как 2 папки
типа
C:\QT
C:\QT_other
статики часто нужны клиенту - при разработке они мешают
про QWT и дизайнер - строю дизайн в линукс, там есть и QWT и KDE виджеты
компиляю я в windows только готовый продукт обычно статик
PS: люди будем терпимы))
Записан
silart
Гость
Re: QWT. Помогите правильно установить
«
Ответ #28 :
Сентябрь 24, 2008, 10:46 »
Цитата: Admin от Сентябрь 24, 2008, 10:11
я QT статическое и динамическое организую как 2 папки
типа
C:\QT
C:\QT_other
статики часто нужны клиенту - при разработке они мешают
про QWT и дизайнер - строю дизайн в линукс, там есть и QWT и KDE виджеты
компиляю я в windows только готовый продукт обычно статик
PS: люди будем терпимы))
Да, у меня тоже 2 версии Qt: static и shared. Я с этим уже разобрался. Компилировал все студией. Как только эти виджеты в дизайнер запихать? Я смотрел тут на форуме, были предложения убить ветку реестра. Но как-то не хочется так сразу так круто! Вдруг все остальное перестанет работать? Неужели разработчики не справились с этим глюком? Ведь давно же про это разговор идет...
Записан
ilyagoo
Гость
Re: QWT. Помогите правильно установить
«
Ответ #29 :
Сентябрь 24, 2008, 11:32 »
Не уверен, что в тему, не вчитывался в ответы. у меня все пашет, набор следующий: VS2005 + sp1, qt-4.2.2, qt-integration-1.2, qwt-5.0.0.
по шагам:
1) ставлю студию, ставлю на нее sp1. делаю переменные среды PATH, LIB, INCLUDE и QTDIR с соответствующими путями.
2) распаковываю qt в папку "c:\qt\4.2.2". В "c:\qt\4.2.2\src\corelib\tools" изменяю два файла (qhash.h и qmap.h), иначе не откомпилится с sp1, а без sp1 порой собирает криво (иногда даже в конструкторы не попапает).
3) в "c:\qt\4.2.2" : configure, nmake.
4) устанавливаю integration. теперь в студии есть встроенный дизайнер qt форм.
5) в "c:\qt\4.2.2\qwt" пихаю исходники qwt.
6) из студии открываю файл qwt.pro и собираю debug и release с разными именами на выходе, например, qwt5d.dll и qwt5.dll.
7) теперь из командной строки собираю qwt_plugin. в папке с ".pro": configure, nmake, nmake install. в дизайнере появились компоненты qwt.
чтобы они появились и в студии, пихни qwt_designer_plugin.dll в папку с интегратором "c:\program files\Trolltech\...\плагины к дизайнеру".
есть вопросы - пиши
Записан
Страниц:
1
[
2
]
3
Вверх
Печать
« предыдущая тема
следующая тема »
Перейти в:
Пожалуйста, выберите назначение:
-----------------------------
Qt
-----------------------------
=> Вопросы новичков
=> Уроки и статьи
=> Установка, сборка, отладка, тестирование
=> Общие вопросы
=> Пользовательский интерфейс (GUI)
=> Qt Quick
=> Model-View (MV)
=> Базы данных
=> Работа с сетью
=> Многопоточное программирование, процессы
=> Мультимедиа
=> 2D и 3D графика
=> OpenGL
=> Печать
=> Интернационализация, локализация
=> QSS
=> XML
=> Qt Script, QtWebKit
=> ActiveX
=> Qt Embedded
=> Дополнительные компоненты
=> Кладовая готовых решений
=> Вклад сообщества в Qt
=> Qt-инструментарий
-----------------------------
Программирование
-----------------------------
=> Общий
=> С/C++
=> Python
=> Алгоритмы
=> Базы данных
=> Разработка игр
-----------------------------
Компиляторы и платформы
-----------------------------
=> Linux
=> Windows
=> Mac OS X
=> Компиляторы
===> Visual C++
-----------------------------
Разное
-----------------------------
=> Новости
===> Новости Qt сообщества
===> Новости IT сферы
=> Говорилка
=> Юмор
=> Объявления
Загружается...