Название: OpenSSL и компиляция, нужна помощь Отправлено: Hellrider от Апрель 25, 2013, 14:13 Использую в проекте AES шифрование, через OpenSSL. При компиляции выдаёт "aes.obj:-1: ошибка: LNK2019: ссылка на неразрешенный внешний символ _EVP_MD_CTX_cleanup в функции "class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > __cdecl sha256(class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> >)" (?sha256@@YA?AV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@V12@@Z)" и много такого рода ошибок. Инклюды на openssl нормально подключаются. Вот код самой реализации шифрования
aes.h Код aes.ccp Код
Есть подозрение на криво установленный openssl, но я не уверен. Устанавливал я его так: скачал версию под винду, установил, из установленного дистрибутива скопировал содержимое папок bin, include, lib в Qt библиотеку в соответствующие папки + ддлки тоже в bin. Помогите решить проблему Название: Re: OpenSSL и компиляция, нужна помощь Отправлено: lesav от Апрель 26, 2013, 11:53 ssleay32.dll и libeay32.dll положить рядом с бинарником, использующим SSL
Как собирал Qt ? Код: configure.exe -opensource -release -shared -debug-and-release -nomake demos -nomake examples -openssl -I C:\OpenSSL-Win32\Include -L C:\OpenSSL-Win32\Lib Или воспользовался готовым ? Название: Re: OpenSSL и компиляция, нужна помощь Отправлено: Hellrider от Апрель 26, 2013, 13:02 ssleay32.dll и libeay32.dll положить рядом с бинарником, использующим SSL Как собирал Qt ? Код: configure.exe -opensource -release -shared -debug-and-release -nomake demos -nomake examples -openssl -I C:\OpenSSL-Win32\Include -L C:\OpenSSL-Win32\Lib Или воспользовался готовым ? Изначально использовал стандартную собранную Qt с сайта, ничего не пересобирал, тупо закинул SSL как писал выше. Потом решил собрать из исходников с поддержкой openssl Код: -shared -debug-and-release -opensource -openssl -qt-zlib -qt-libpng -qt-libmng -qt-libjpeg -nomake demos -nomake examples чего только не пробовал, потом наткнулся на такую штуку как LIBS += -llibeay32 . Прописал в про файле - заработало! Решил попробовать запустить также, только на старой сборке которая не пересобиралась - тоже работает! :o Чудеса... Собственно, напрашивается такой вопрос - зачем пересобирать Qt под openssl, если можно тупо закинуть файлики по папочкам и все работает? Название: Re: OpenSSL и компиляция, нужна помощь Отправлено: Bepec от Апрель 26, 2013, 13:04 Потому что библиотеки могут быть собраны с SSL а могут быть и не собраны.
И если они не собраны с поддержкой, даже закопав свою программу в горы библиотек openSsl ты ничего не получишь :) Название: Re: OpenSSL и компиляция, нужна помощь Отправлено: Hellrider от Апрель 26, 2013, 13:31 Ну а так как я подсовываю SSL для соборки Qt, такой способ правильный?
|