© EVILEG 2015-2018
Рекомендует хостинг
TIMEWEB
5 сентября 2018 г. 18:05

Ошибка статической компиляции Qt с OpenSSL

open-ssl, Qt, c++

Здравствуйте! Хочу скомпилировать статически Qt с OpenSSL. Создал batch файл:

SET /P qtBuildType=Qt build type (shared/static): 
SET /P qtBuildMySqlIncludePath=MySql include path: 
SET /P qtBuildMySqlLibPath=MySql lib path: 
SET /P qtBuildOpenSSLIncludePath=OpenSSL include path: 
SET /P qtBuildOpenSSLLibPath=OpenSSL lib path: 
SET /P qtBuildPath=Enter Qt build path: 
configure.bat -debug-and-release -%qtBuildType% -opensource -nomake tools -nomake examples -no-ltcg -sql-mysql -I "%qtBuildMySqlIncludePath%" -L "%qtBuildMySqlLibPath%" -openssl-linked -I "%qtBuildOpenSSLIncludePath%" -L "%qtBuildOpenSSLLibPath%" -prefix "%qtBuildPath%"
Все работает хорошо, но за некоторое время выбрасывает ошибки с OpenSSL:
..\..\bin\xmlpatterns.exe : fatal error LNK1120: 197 unresolved externals
jom: D:\QtBuild\Src\qtxmlpatterns\tools\xmlpatterns\Makefile.Release [..\..\bin\xmlpatterns.exe] Error 1120
jom: D:\QtBuild\Src\qtxmlpatterns\tools\xmlpatterns\Makefile [release] Error 2
jom: D:\QtBuild\Src\qtxmlpatterns\tools\Makefile [sub-xmlpatterns-make_first] Error 2
jom: D:\QtBuild\Src\qtxmlpatterns\tools\Makefile [sub-xmlpatternsvalidator-make_first] Error 2
jom: D:\QtBuild\Src\qtxmlpatterns\Makefile [sub-tools-make_first] Error 2
jom: D:\QtBuild\Src\Makefile [module-qtxmlpatterns-make_first] Error 2
Пробовал разные версии библиотек OpenSSL, но проблема осталась. Компилирую Qt 5.9.6 под MSVC2017 x86. Вот нашел похожую проблему: https://forum.qt.io/topic/85501/error-whie-building-qt-5-9-with-openssl-statically-using-vs2015/8 
Там какой-то патч использовали, но не знаю как получить этот патч. Спасибо.

  • #
  • Ответ был помечен как решение
  • 6 сентября 2018 г. 17:14

Здравствуйте! Проблема была с OpenSSL библиотеками. Я загрузил библиотеки с этого сайта: https://www.npcglib.org/~stathis/blog/precompiled-openssl/ . Теперь все нормально компилируется.

Ответы

Только авторизованные пользователи могут отвечать на форуме.
Пожалуйста, Авторизуйтесь или Зарегистрируйтесь
24 сентября 2018 г. 17:42
edorofeeva

C++ - Тест 001. Первая программа и типы данных

  • Результат 100баллов,
  • Очки рейтинга10
24 сентября 2018 г. 17:37
edorofeeva

C++ - Тест 001. Первая программа и типы данных

  • Результат 66баллов,
  • Очки рейтинга-1
23 сентября 2018 г. 14:38
No Names

C++ - Тест 001. Первая программа и типы данных

  • Результат 60баллов,
  • Очки рейтинга-1
Последние комментарии
25 сентября 2018 г. 15:24
pasagir

Qt/C++ - Урок 006. QSqlQueryModel - Таблицы в Qt с помощью SQL-запросов

Это запись метода которая работает параллельно с БД, данные из парсера поступают в БД и в наш метод одновременно
25 сентября 2018 г. 14:56
pasagir

Qt/C++ - Урок 006. QSqlQueryModel - Таблицы в Qt с помощью SQL-запросов

Как можно динамически отображать данные в таблице? На COM-порт непрерывно приходят данные, я их принимаю сохраняю в БД, а после остановка приема/передачи данные отображаются в таблице. В табли...
25 сентября 2018 г. 10:43
Евгений Легоцкой

Qt/C++ - Урок 017. QGraphicsScene или как работать с графикой в Qt

Прямо так не написано. Хотя соглашусь, что в качестве улучшения вызов данного метода здесь к месту.
25 сентября 2018 г. 10:37
reef425

Qt/C++ - Урок 017. QGraphicsScene или как работать с графикой в Qt

В статье написано, что таймер сработает один раз. Но это не так. Было бы хорошо добавить timer->setSingleShot(true); После инициализации таймера.
24 сентября 2018 г. 15:09
Евгений Легоцкой

Qt Linux - Урок 001. Автозапуск Qt приложения под Linux

А вот здесь у меня есть пример использования supervisor. https://evileg.com/ru/post/3/ Вся статья вам там не интересна, интересен только шаг с настройкой supervisor. Он получается ...
Сейчас обсуждают на форуме
25 сентября 2018 г. 15:57
Евгений_Канусовский@1981

Чтение файлов в python

Вот код: import sys from re import matchfrom vira import *from PyQt5 import QtCore, QtGui, QtWidgetsfrom PyQt5.QtWidgets import (QDialog, QFileDialog, QMessageBox, QLineEdit, QProgr...
25 сентября 2018 г. 13:51
DmitrySD

Трансляция видео с помощью VLC по RTP

Спасибо! Данная команда не дала результата. В итоге сделал трансляцию через ffmpeg. ffmpeg.exe -f gdigrab -framerate 30 -i desktop -vcodec libx264 -preset:v veryfast -b:v 4000k -f...
25 сентября 2018 г. 13:39
Arrow

Настройка Qt Creator для Android

Конечно отпишусь.
25 сентября 2018 г. 12:22
avovana

Автозапуск и авторестарт Qt Gui Application в Linux

Не получается... Решил пробовать скрипт, выполняемый при загрузке. В скрипте вечный цикл по старту программы.
Присоединяйтесь к нам в социальных сетях