crossplatform.ru

Здравствуйте, гость ( Вход | Регистрация )

2 страниц V   1 2 >  
Ответить в данную темуНачать новую тему
> Картинки не отображаются
PassiveX
  опции профиля:
сообщение 9.2.2009, 19:24
Сообщение #1


Новичок


Группа: Новичок
Сообщений: 7
Регистрация: 9.2.2009
Пользователь №: 541

Спасибо сказали: 0 раз(а)




Репутация:   0  


Имею программу, которая пользует webkit. Появилась проблема, что он некоторые типа картинок не отображает на компах, где я не веду разработку.
А веду разработку под Маком и Вендой. Под макос получилось скомпилить qt статически, и прога потом на других маках свободно бегала и все картинки на инет-страницах грузила и показывала. Под виндовс скомпилить как надо ни разу не получилось, постоянные ошибки, устал вытирать пот, поэтому таскаю за собой dll-ки. Но программка моя упорно не хочет показывать gif (заменяет фирменным webkit-овскими вопросами).

Пробовал addLibraryPath натравить на папку с imageformats, клал её в папку с ехе-шником, делал на тестовых компах папку c:\qt\4.4.3\plugins и копировал туда всю папку imageformats и папки plugins, ничего не помогает.

Скажите, я хотя бы на правильном пути?
WinXP, Qt 4.4.3
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
Litkevich Yuriy
  опции профиля:
сообщение 9.2.2009, 19:34
Сообщение #2


разработчик РЭА
*******

Группа: Сомодератор
Сообщений: 9669
Регистрация: 9.1.2008
Из: Тюмень
Пользователь №: 64

Спасибо сказали: 807 раз(а)




Репутация:   94  


Цитата(PassiveX @ 9.2.2009, 22:24) *
Пробовал addLibraryPath натравить на папку с imageformats, клал её в папку с ехе-шником, делал на тестовых компах папку c:\qt\4.4.3\plugins и копировал туда всю папку imageformats и папки plugins, ничего не помогает.
по этому поводу (динамическая сборка) читай в теме FAQ (что в верху подфорума) "развертывание приложений Qt в MS Windows"



Цитата(PassiveX @ 9.2.2009, 22:24) *
Появилась проблема, что он некоторые типа картинок не отображает на компах, где я не веду разработку.
Цитата(PassiveX @ 9.2.2009, 22:24) *
Под виндовс скомпилить как надо ни разу не получилось,
есть проблема со статической сборкой именно с картинками. Как я понял только с имеющими не свободную лицензию. Вроде в 4.5. ее должны были исправить
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
kwisp
  опции профиля:
сообщение 10.2.2009, 13:37
Сообщение #3


астарожна ынтжинэр
*****

Группа: Участник
Сообщений: 1404
Регистрация: 26.11.2008
Из: ТаганрогРодинаЧехова
Пользователь №: 435

Спасибо сказали: 113 раз(а)




Репутация:   23  


получается хоть собрано и динамически все равно не отображает гиф.....

а в примерах-демонстрациях браузер у тебя под виндой гиф показывает???
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
PassiveX
  опции профиля:
сообщение 10.2.2009, 17:23
Сообщение #4


Новичок


Группа: Новичок
Сообщений: 7
Регистрация: 9.2.2009
Пользователь №: 541

Спасибо сказали: 0 раз(а)




Репутация:   0  


Я дополню свой вопрос, потому что я в нём успел за сутки немного продвинуться

Во-первых я уточню, что собрать-то статически Qt получается при определённых параметрах configure.exe. Проблема в другом, линковщик не может слинковать прогу с библиотекой webkit'а, ругаясь в консоли про undefined reference на страшные наборы букв, в которых есть знакомые (типа webframe, webpage). Я понимаю, если бы он ругался в случае отсутствия статично-откомпиленной библиотеки, а вебкит скомпилился без ошибок.

Во-вторых, к вопросу основной темы.
Системные переменные оказались не причем, ровно как и реестр. Ровно как и вся папка Qt на диске С!
Я рвал от злости на себе волосы, когда вдруг понял причину непоказа картинок. Да, это зависимость на plugins/imageformats. Только ради экономии времени я подменял ехе-шник на сетевых шарах, а не копировал новый билд на соседний компьютер. Запускал прям из сети, что в таких случаях почему-то вело к неуспеху.
Но проблема до конца не решилась.

Дело в том, что картинки в браузере показываются только в debug-версии программы. Такому неоконченному успеху поспособствовал файл qt.conf в папке с программой, который я создал всего из двух строк:
[Paths]
#Prefix=C:\\Qt\\4.4.3

Не случайно закомментил последнюю строку, так как только так QLibraryInfo::PrefixPath становится равным директории, из которой программа запускается, и тогда плагины для просмотра графики подгружаются. Если файл не создавать, то QLibraryInfo::PrefixPath указывает на до боли знакомую папку C:\iwmake\build_mingw_opensource, которую я само собой не создавал

Чую жопой, что эта папка волшебная, по ходу разработчики Qt в ней что-то творят. Помнится, год назад с ней были проблемы при компиляции одного проекта.

Таким образом, выдавая информацию об QLibraryInfo::location(QLibraryInfo::PrefixPath), QLibraryInfo::location(QLibraryInfo::PluginsPath), а также QCoreApplication::applicationDirPath () для приличия, получается тотальное идиотство. Все пути совпадают с папками, в которых лежит прога и папка plugins с копированным содержимым imageformats внутри. Только debug-версия картинки показывает, а release - нет!

Предчувствуя вопросы, повторюсь, что да, в папке imageformats лежат как dll'ки для дебуга, так и для релиза.

Товрищи, сил моих больше нет. Давайте дифдиагнозом что ли эту тварь придушим?

Цитата(Litkevich Yuriy @ 9.2.2009, 19:34) *
есть проблема со статической сборкой именно с картинками. Как я понял только с имеющими не свободную лицензию. Вроде в 4.5. ее должны были исправить


Юрий, буду благодарен куску текста от официального источника, где это будет написано. А то наш одмин твердит то же самое, сам не напрограммировав и пары строчек кода в своей жизни, а сам я на сайте Qt тоже ничего не увидел.
Повторюсь, что WebKit скомпилить мне удалось, проблема в линковке была. А вообще эта тема про картинки. Уж они-то слабо должны быть связаны с LGPL :)

Цитата(kwisp @ 10.2.2009, 13:37) *
а в примерах-демонстрациях браузер у тебя под виндой гиф показывает???


да, проблемы не существует на компьютерах, где установлен Qt. Проблема в распространении программы, раз у меня статически ничего линковаться не хочется, то надо таскать за собой dll'ки, среди которых плагины чтения картинок не подгружаются
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
Litkevich Yuriy
  опции профиля:
сообщение 10.2.2009, 17:44
Сообщение #5


разработчик РЭА
*******

Группа: Сомодератор
Сообщений: 9669
Регистрация: 9.1.2008
Из: Тюмень
Пользователь №: 64

Спасибо сказали: 807 раз(а)




Репутация:   94  


Цитата(PassiveX @ 10.2.2009, 20:23) *
Юрий, буду благодарен куску текста от официального источника, где это будет написано.
надо искать на прогорге, там один из трольтеховцев (русскоговорящий) это дело подтверждал. А может и на трэкере тролей есть
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
kwisp
  опции профиля:
сообщение 10.2.2009, 17:55
Сообщение #6


астарожна ынтжинэр
*****

Группа: Участник
Сообщений: 1404
Регистрация: 26.11.2008
Из: ТаганрогРодинаЧехова
Пользователь №: 435

Спасибо сказали: 113 раз(а)




Репутация:   23  


Цитата
Проблема в другом, линковщик не может слинковать прогу с библиотекой webkit'а, ругаясь в консоли про undefined reference на страшные наборы букв, в которых есть знакомые (типа webframe, webpage). Я понимаю, если бы он ругался в случае отсутствия статично-откомпиленной библиотеки, а вебкит скомпилился без ошибок


что то подобное происходит если в файл проекта не добавишь
QT+=webkit

как впрочем и другие модули хмл скл и т.д

попозже обещаю попробовать собрать проект с вебкит статически у меня он тоже в проге есть...
пока со временем туго...
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
Litkevich Yuriy
  опции профиля:
сообщение 10.2.2009, 18:00
Сообщение #7


разработчик РЭА
*******

Группа: Сомодератор
Сообщений: 9669
Регистрация: 9.1.2008
Из: Тюмень
Пользователь №: 64

Спасибо сказали: 807 раз(а)




Репутация:   94  


Цитата(PassiveX @ 10.2.2009, 20:23) *
то надо таскать за собой dll'ки, среди которых плагины чтения картинок не подгружаются
ты прочитал, то что я давал по поводу динамической сборки в сообщении №2
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
kwisp
  опции профиля:
сообщение 10.2.2009, 18:03
Сообщение #8


астарожна ынтжинэр
*****

Группа: Участник
Сообщений: 1404
Регистрация: 26.11.2008
Из: ТаганрогРодинаЧехова
Пользователь №: 435

Спасибо сказали: 113 раз(а)




Репутация:   23  


Цитата
Проблема в распространении программы, раз у меня статически ничего линковаться не хочется, то надо таскать за собой dll'ки, среди которых плагины чтения картинок не подгружаются


странно.... у меня 4.4.3 динамически собранный проект c WebKit прекрасно все на других машинах(без установленного Qt) отображает.


я собирал

configure -release -platform win32-g++ -no-vcproj -webkit -assistant-webkit

Сообщение отредактировал kwisp - 10.2.2009, 18:04
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
Константин
  опции профиля:
сообщение 10.2.2009, 18:06
Сообщение #9


Студент
*

Группа: Участник
Сообщений: 69
Регистрация: 9.2.2009
Пользователь №: 539

Спасибо сказали: 15 раз(а)




Репутация:   1  


Цитата(Litkevich Yuriy @ 10.2.2009, 17:44) *
надо искать на прогорге, там один из трольтеховцев (русскоговорящий) это дело подтверждал. А может и на трэкере тролей есть

Цитата
>> [qt 4.4.1] Нет иконок в print preview в static версии
>> Делаю print preview в Windows, иконок верхней панели нет, только кнопочки. В Linux в shared версии все good.

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

больше в том треде ничего, собственно, нет по теме.

в данном же слечае проблема иная (раз уж даже с плагинами не хочет заводиться)
Цитата(PassiveX @ 10.2.2009, 17:23) *
Чую жопой, что эта папка волшебная <snip>

папка не волшебная. видимо, в неё устанавливали (или собирали в ней) кутэ для последующей упаковки.

я бы посоветовал скачать тарболл с исходниками (qt-all-*-x.y.z) и собрать начисто без последующей установки, а затем обновить бинарники на тестовых машинах. также можно поубивать software\trolltech в реестрах - чтобы уж наверняка.
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
kwisp
  опции профиля:
сообщение 10.2.2009, 18:15
Сообщение #10


астарожна ынтжинэр
*****

Группа: Участник
Сообщений: 1404
Регистрация: 26.11.2008
Из: ТаганрогРодинаЧехова
Пользователь №: 435

Спасибо сказали: 113 раз(а)




Репутация:   23  


Цитата
в static версии

а человек пишет
Цитата
.... то надо таскать за собой dll'ки, среди которых плагины чтения картинок не подгружаются


получается проблема родтвенная но не точно такая же.
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение

2 страниц V   1 2 >
Быстрый ответОтветить в данную темуНачать новую тему
Теги
Нет тегов для показа


2 чел. читают эту тему (гостей: 2, скрытых пользователей: 0)
Пользователей: 0




RSS Текстовая версия Сейчас: 27.12.2024, 2:29