KDSOAP , пожалуй, лучшая на сегодняшний день библиотека  для обмена через  SOAP протокол, которая работает с Qt5 без лишних костылей (в отличии от QtSOAP и gSOAP)

[tip]Обновил для Qt 5.9[/tip]

Подробнее про KDSoap (на английском)

Для сборки потребуется:

  • git (при установке отметьте Use git from the windows command promt)
  • python2 (именно 2 а не 3! При установке в списке включите add python.exe to Path)
  • perl
  • Qt5
  • OpenSSL (Качаете Win32 OpenSSL v1.0.2L Light, при установке выбираете копировать в директорию Windows)

P.S. Если у Вас что-то уже установлено естественно переустанавливать не надо.

Теперь открываем консольку винды и переходим в каталог в котором будем собирать KDSoap, у меня это C:\Projects\kdsoap  и клонируем гит репозиторий: https://github.com/KDAB/KDSoap.git

cd C:\Projects\kdsoap
git clone https://github.com/KDAB/KDSoap.git .

Дальше нужно в Path добавить месторасположения qmake и mingw32-make. У себя замените на свой путь.

set PATH=C:\Qt\5.8\mingw53_32\bin;%PATH%
set PATH=C:\Qt\Tools\mingw530_32\bin;%PATH%

Дальше начинаем непосредственно собирать KDSoap:

git submodule update --init
python autogen.py -shared -debug
set PATH=C:\Projects\kdsoap\bin;%PATH%
set LIB=C:\Projects\kdsoap\lib;%LIB%
mingw32-make
mingw32-make install
[note] Возможные варианты сборки:
python autogen.py -shared -debug
python autogen.py -shared -release
python autogen.py -static -debug
python autogen.py -static -release
Надеюсь понятно для чего какие параметры
[/note] [tip] Если python autogen.py   начнёт ругаться на perl unable to remap,
то  убедитесь, что Perl идёт после Git в переменной Path (echo %PATH%) и обновите Git, но, впринципе, это не должно повлиять на сборку.
[/tip]

Установка должна успешно завершиться =)
Сейчас собрали дебажную версию. Аналогично собирается релизная.

Примеры можно открыть в QtCreator из каталога: C:\Projects\kdsoap\examples\

3 комментария

Dmitrii 5 ноября 2019 - 13:46

shared версия работает нормально. А вот статику не пролучилось запустить, ругается на потоки. Разбираться не когда было :(.

Reply
Дима 8 августа 2017 - 11:30

Спасибо за статью!
Ещё не плохо бы указать, что нужно сделать репозиторий в той папке, куда сделали гит клон. Без этого у меня ничего не получалось (гитом не все пользуются).

Reply
Pavelk 6 сентября 2017 - 22:29

Репозитория отдельно делать никакого не нужно, при git clone он сам создаётся…

Reply

Leave a Comment

Этот сайт использует Akismet для борьбы со спамом. Узнайте, как обрабатываются ваши данные комментариев.

You may also like