Russian Qt Forum
Ноябрь 24, 2024, 14:56 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
 
  Начало   Форум  WIKI (Вики)FAQ Помощь Поиск Войти Регистрация  

Страниц: [1]   Вниз
  Печать  
Автор Тема: Сборка OpenVG  (Прочитано 9542 раз)
bibelwort
Гость
« : Декабрь 11, 2009, 21:56 »

Доброго времени суток всем!
У меня такой вопрос... Скачал с сайта Qt собранную версию Qt 4.6 для Windows для Visual Studio, но в эта сборка является стандартной, то есть без OpenVG, а я хотел бы ее пересобрать с поддержкой OpenVG. Как правильно запустить процесс сборки, чтобы...
Во-первых: пересобралось только то, что изменяется при включении OpenVG, а все остальное осталось без изменений и не пересобиралось
Во-вторых: удалить после сборки все лишние файлы автоматически, то есть оставить только собранные dll, а прочий мусор в виде make-файлов и *.db и т.п. выкинуть (после компиляции, особенно если компиляция средствами Visual Studio, папка с Qt сильно раздувается в объеме)

Таким образом, хотелось бы сделать сборку аля-официальная сборка Qt, но с поддержкой OpenVG, а это значит ничего лишнего и размер библиотеки всего 1 Gb

Заранее благодарю! Подмигивающий
Записан
niXman
Гость
« Ответ #1 : Декабрь 11, 2009, 22:07 »

*** день сурка!
Модераторы, простите за оффтоп.
Записан
Dendy
Гость
« Ответ #2 : Декабрь 11, 2009, 23:30 »

Не пересобирать всё не выйдет, если не хотите случайно пропустить какие-то зависимости. Но можете селать так. Сохраняете ранее сгенерированные файлы qconfig.h/qconfig.cpp ($qtdir/src/corelib/global) и прогоняете configure с включённым OpenVG. Если новые qconfig.h/qconfig.cpp остались такими же - значит разница в флагах сборки для некоторых конкретных подпроектов. Думаю достаточно будет просто зайти в $qtdir/gui и пересобрать только QtGui одной командой nmake.

Как минимум в qmake хардкодится путь к самой Qt, поэтому её нужно будет собрать по новой. Остальное думаю можно будет просто перебросить из другого дерева сборки. Хотя я бы таким не занимался. Гораздо проще распаковать Qt в чистую директорию, выбросить doc/examples/demos/translations/tools, прогнать configure с OpenVG и собрать по очереди: bootstrap, moc, rcc, uic, corelib, gui, ... и так далее. А в конце на главном Makefile'е выполнить nmake clean.
Записан
crackedmind
Гость
« Ответ #3 : Декабрь 12, 2009, 07:23 »

Вообщем-то скачал это http://www.khronos.org/registry/vg/ri/openvg-1.1-ri.zip
Сборка упала на стадии линковки. Правда я собирал только сам плагин Улыбающийся Без пересборки Qt

Добавлено
Цитировать
Как минимум в qmake хардкодится путь к самой Qt, поэтому её нужно будет собрать по новой. Остальное думаю можно будет просто перебросить из другого дерева сборки. Хотя я бы таким не занимался. Гораздо проще распаковать Qt в чистую директорию, выбросить doc/examples/demos/translations/tools, прогнать configure с OpenVG и собрать по очереди: bootstrap, moc, rcc, uic, corelib, gui, ... и так далее. А в конце на главном Makefile'е выполнить nmake clean.
Все делается проще Улыбающийся
1) Открываем mkspecs\qtconfig.pri
2) добавляем в переменную QT_CONFIG параметры egl и openvg (собственно этим конфигуратор и занимается)
3) сохраняем
4) пересобираем QtGui, QtOpenGL
5) собираем 4.6.0\src\openvg\
6) Собираем плагин 4.6.0\src\plugins\graphicssystems\openvg\
7) PROFIT!!!
« Последнее редактирование: Декабрь 12, 2009, 08:33 от crackedmind » Записан
crackedmind
Гость
« Ответ #4 : Декабрь 12, 2009, 09:19 »

Как оказалось не все так просто Улыбающийся Надо еще пару мест допилить напильником.


1) Открыть mkspecs\win32-msvc2008\qmake.conf
WARNING: Это подходит только для той версии EGL/OpenVG SDK, ссылка на которую приведена в предыдущем посте
добавить такие строчки
Код:
QMAKE_LIBS_EGL        = libOpenVG.lib
QMAKE_LIBS_OPENVG     = libOpenVG.lib
2) Перейти в папку src\gui\egl
3) Добавить след. строчку в egl.pri
Код:
win32*: SOURCES += egl/qegl_wince.cpp
4) Пересобрать нужные библиотеки.

p.s. Скомпилироватся скомпилировалось. Только вот не работает Грустный Запустил ассистент с этой подсистемой. Жрет 100% CPU почти... И не реагирует

Может кто дальше доковыряет? Улыбающийся
Записан
Dendy
Гость
« Ответ #5 : Декабрь 12, 2009, 09:42 »

Может кто дальше доковыряет? Улыбающийся

А толку...
Записан
bibelwort
Гость
« Ответ #6 : Декабрь 13, 2009, 01:17 »

Спасибо за ваши ответы! Улыбающийся
Я попробую сделать, посмотрю, что получится... О результатах напишу здесь.
Записан
bibelwort
Гость
« Ответ #7 : Декабрь 15, 2009, 12:16 »

У меня не получилось собрать Qt c поддержкой OpenVG Грустный

Вот, что я сделал:

1) Установил Qt 4.6.0 для Visual Studio 2008
2) Скачал OpenVG c сайта производителя (тот же, какой предлагали выше)
3) Прописал в файле qmake.conf для win32-msvc2008 переменные, которые в справке указаны (пути к OpenVG и EGL)
4) Сконфигурировал Qt c ключом -openvg
5) Начал сборку

В результате ошибка при компиляции файла qegl.cpp:

qegl.cpp
c:\soft\programming\4.6.0\include\qtgui\private\../../../src/gui/egl/qeglproperties_p.h(64) : fatal error C1083: Не удается открыть файл include: EGL/egl.h:
No such file or directory
qeglproperties.cpp
c:\soft\programming\4.6.0\src\gui\egl\qeglproperties_p.h(64) : fatal error C1083: Не удается открыть файл include: EGL/egl.h: No such file or directory

Отсюда вопрос: Что я сделал неправильно? Как правильно указать путь к OpenVG и EGL? При этом в скачанном мною OpenVG исходники и библиотеки только для OpenVG, а для EGL есть только файл egl.h, а самой библиотеки нет, поэтому не знаю точно какой путь писать...
Записан
crackedmind
Гость
« Ответ #8 : Декабрь 16, 2009, 05:44 »

Дык, надо в переменные окружения LIB & INCLUDE нужные пути дописать Улыбающийся
Записан
bibelwort
Гость
« Ответ #9 : Декабрь 16, 2009, 18:03 »

Дык, надо в переменные окружения LIB & INCLUDE нужные пути дописать Улыбающийся

Ок, сделаем....
А по поводу EGL, что можете сказать? Заголовочного файла egl.h будет достаточно, чтобы все собрать?
Записан
crackedmind
Гость
« Ответ #10 : Декабрь 16, 2009, 18:47 »

Нет, OpenVG требуется не только egl.h, но и openvg.h Улыбающийся
Записан
bibelwort
Гость
« Ответ #11 : Март 07, 2010, 19:54 »

Господа!
К сожалению у меня так и не получилось собрать Qt с OpenVG. Везде все на английском и до конца понять не могу... Грустный
Напишите пожалуйста последовательность действий, как собрать? Что скачать, что прописать и где, а после сборки как включить. К тому же непонятно, Qt автоматически будет использовать OpenVG в QGraphicsScene или нужно еще что-нибудь делать? QPainter явно не использую, только стандартные элементы Graphics System. Спасибо!
Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


Страница сгенерирована за 0.127 секунд. Запросов: 21.