Картинки не отображаются |
Здравствуйте, гость ( Вход | Регистрация )
Картинки не отображаются |
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 |
Пробовал addLibraryPath натравить на папку с imageformats, клал её в папку с ехе-шником, делал на тестовых компах папку c:\qt\4.4.3\plugins и копировал туда всю папку imageformats и папки plugins, ничего не помогает. по этому поводу (динамическая сборка) читай в теме FAQ (что в верху подфорума) "развертывание приложений Qt в MS Windows"Появилась проблема, что он некоторые типа картинок не отображает на компах, где я не веду разработку. Под виндовс скомпилить как надо ни разу не получилось, есть проблема со статической сборкой именно с картинками. Как я понял только с имеющими не свободную лицензию. Вроде в 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'ки для дебуга, так и для релиза. Товрищи, сил моих больше нет. Давайте дифдиагнозом что ли эту тварь придушим? есть проблема со статической сборкой именно с картинками. Как я понял только с имеющими не свободную лицензию. Вроде в 4.5. ее должны были исправить Юрий, буду благодарен куску текста от официального источника, где это будет написано. А то наш одмин твердит то же самое, сам не напрограммировав и пары строчек кода в своей жизни, а сам я на сайте Qt тоже ничего не увидел. Повторюсь, что WebKit скомпилить мне удалось, проблема в линковке была. А вообще эта тема про картинки. Уж они-то слабо должны быть связаны с LGPL а в примерах-демонстрациях браузер у тебя под виндой гиф показывает??? да, проблемы не существует на компьютерах, где установлен Qt. Проблема в распространении программы, раз у меня статически ничего линковаться не хочется, то надо таскать за собой dll'ки, среди которых плагины чтения картинок не подгружаются |
|
|
Litkevich Yuriy |
10.2.2009, 17:44
Сообщение
#5
|
разработчик РЭА Группа: Сомодератор Сообщений: 9669 Регистрация: 9.1.2008 Из: Тюмень Пользователь №: 64 Спасибо сказали: 807 раз(а) Репутация: 94 |
|
|
|
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 |
|
|
|
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 |
надо искать на прогорге, там один из трольтеховцев (русскоговорящий) это дело подтверждал. А может и на трэкере тролей есть Цитата >> [qt 4.4.1] Нет иконок в print preview в static версии >> Делаю print preview в Windows, иконок верхней панели нет, только кнопочки. В Linux в shared версии все good. К сожалению это известная проблема, решения для которой пока нет, ибо поддержка соответствующих графических форматов реализована в плагинах, которые нельзя использовать при статической сборке. больше в том треде ничего, собственно, нет по теме. в данном же слечае проблема иная (раз уж даже с плагинами не хочет заводиться) Чую жопой, что эта папка волшебная <snip> папка не волшебная. видимо, в неё устанавливали (или собирали в ней) кутэ для последующей упаковки. я бы посоветовал скачать тарболл с исходниками (qt-all-*-x.y.z) и собрать начисто без последующей установки, а затем обновить бинарники на тестовых машинах. также можно поубивать software\trolltech в реестрах - чтобы уж наверняка. |
|
|
kwisp |
10.2.2009, 18:15
Сообщение
#10
|
астарожна ынтжинэр Группа: Участник Сообщений: 1404 Регистрация: 26.11.2008 Из: ТаганрогРодинаЧехова Пользователь №: 435 Спасибо сказали: 113 раз(а) Репутация: 23 |
Цитата в static версии а человек пишет Цитата .... то надо таскать за собой dll'ки, среди которых плагины чтения картинок не подгружаются получается проблема родтвенная но не точно такая же. |
|
|
Текстовая версия | Сейчас: 3.12.2024, 4:58 |