| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > С/С++: Кроссплатформенное программирование, Qt/Gtk+/wxWidgets > [Qt] Поддержка OpenSSL |
| Автор: sh0375 2.2.2009, 16:38 |
| Не могу заставить работать SSL в QT программе на Vista. На моей WinXP рабочей машине пример Qt\4.3.3\examples\network\securesocketclient\release\securesocketclient.exe работает. Если я копирую его и dll-библиотеки QT на тестовую машину с Vista, то пример выдает "This system does not support OpenSSL." Дистрибутив QT - qt-win-commercial-4.3.3-vs2005.exe. Какие тут могут быть идеи, как заставить этот пример работать на Vista-машине? |
| Автор: ecspertiza 2.2.2009, 16:41 |
| У меня Vista пример работает нормально, правда версия QT 4.4.3 попробуй обнови КуТе. |
| Автор: Elfebet 2.2.2009, 16:50 |
| скинь этот пример securesocketclient, потестим |
| Автор: sh0375 2.2.2009, 16:55 |
| http://www.theexplorationcompany.com/test/release.rar - это пример, скомпилированный из qt-win-commercial-src-4.3.3.zip c MinGW Под XP работает Под Vista - нет |
| Автор: ecspertiza 2.2.2009, 17:04 |
| Ну этот пример тоже работает нормально, может у тебя с оськой какие нибуь проблемы? |
| Автор: just_geek 2.2.2009, 17:31 |
| А либы опенссльные под вистой стоят? Qt их динамически подгружает. Если в configure не указывал статику. |
| Автор: sh0375 2.2.2009, 21:01 |
| >Ну этот пример тоже работает нормально, может у тебя с оськой какие нибудь проблемы? может быть - я ее запускаю под VMWare. Но по идее это никак не должно влиять. Какие могут быть проблемы, из-за которых оно не пашет? >А либы опенссльные под вистой стоят? Qt их динамически подгружает. Если в configure не указывал статику. Либы ssl лежат в архиве вместе со всеми файлами. Причем их присутствие/отсутствие никак не влияет на результат. Если судить по dumpbin, они вообще не используются ни exe, ни network dll. |
| Автор: ecspertiza 3.2.2009, 09:22 |
| Например если ты её запускаешь из под Виртуальной Машиныны проблем может быть куча всётоки это эмулятор, вот скачай тему http://www.openssl.org/source/ отсюда, и попробуй что нибудь поколдовать с ней. |
| Автор: Elfebet 3.2.2009, 10:15 |
| значить закачал твой пример и у меня под вистой тоже не запустилось и та же ошибка "This system does not support OpenSSL" и в итоге вывел что у тебя нехватает длл "ssleay32.dll" в итоге у тебя должно быть 3 длл-ки опенССЛ |
| Автор: ecspertiza 3.2.2009, 10:31 |
| а у меня могло запустится потому что я работал с OpenSSL, и все длл-ки у меня есть. |
| Автор: sh0375 10.3.2009, 14:44 | ||||
| Почему-то при компиляции OpenSSL c помощью MinGW у меня не создается ssleay32.dll Только libeay32, libssl32 А вот если компилить под VS, то создаются все 3 dll Под MinGW я компилирую openssl-0.9.8j командой
не знаете, в чем тут дело? ms\mingw32.bat:
Можно ли как-то скомпилировать QtNetwork4.dll, чтобы эти dll не требовались? |
| Автор: just_geek 10.3.2009, 15:01 |
| Ну вообще-то Qt по умолчанию динамически подгружает эти библиотеки. И прямой зависимости у QtNetwork от них нету. Еще ты можешь скомпилить OpenSSL на visual c++ и они нормально должны подгружаться. Вообщем, никаких проблем не вижу. Год назад, я просто скачал собранные библиотеки openssl и кинул в папку с проектом, все шикарно работало. |
| Автор: sh0375 10.3.2009, 15:28 | ||
если компилить на VS, то нужно вместе с прогой поставлять и run time библиотеки от нее. а у меня идут только от MinGW. не хотелось бы скрещивать библиотеки от 2 компиляторов. |
| Автор: just_geek 10.3.2009, 15:36 | ||
runtime не обязательно, если указать статическую линковку.
Не вижу никаких проблем. Ибо функции эскпортируется без манглинга имен. |
| Автор: TJSonic 28.2.2010, 01:17 |
| А как его Qt Creatorom компилить???Добавить либы в .pro файл и все?Файлы .h кудато добавлять надо?) |