在windows下编译支持SSL/TLS的wsdl2h

本文详述了在Windows平台上从零开始配置并编译gSOAP的过程,特别聚焦于生成支持SSL/TLS的wsdl2h工具,为Onvif开发提供关键步骤。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

网上与Onvif相关的资料并不多,而且大多都是在基于linux平台作开发的,遇到问题可参考的资料很有限,写此文以记录在windows上编译gSOAP的全过程,并生成支持SSL/TLS的wsdl2h工具。

配置gSOAP

  1. 官网下载最新代码,或去csdn下载;
  2. 解压到磁盘根目录(D或E盘);
  3. 将bin/win32路径添加到系统环境变量path中,如:D:\gsoap-2.8\gsoap\bin\win32

安装openssl

点击下载openssl安装包,选择win32-v1.1.1g版本,按提示默认安装即可。

编译wsdl2h工具

因为gSOAP的bin目录下自带的wsdl2h工具,不支持https下载,故需编译带下载功能的wsdl2h。

首先找到wsdl2h对应的vs工程,并打开

在这里插入图片描述

配置工程属性页

预处理宏:WITH_OPENSSL,openssl库文件:libcrypto.lib、libssl.lib(方便拷贝,哈哈~);
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

编译源代码

直接运行是会报错的,如下:

1>d:\gsoap-2.8\gsoap\visualstudio2005\wsdl2h\wsdl2h\includes.h(41): fatal error C1083: 无法打开包括文件: “httpda.h”: No such file or directory
1>  正在生成代码...
1>  正在编译...
1>  bpel.cpp
1>d:\gsoap-2.8\gsoap\visualstudio2005\wsdl2h\wsdl2h\includes.h(41): fatal error C1083: 无法打开包括文件: “httpda.h”: No such file or directory
1>  正在生成代码...
1>  正在编译...
1>  mime.cpp
1>d:\gsoap-2.8\gsoap\visualstudio2005\wsdl2h\wsdl2h\includes.h(41): fatal error C1083: 无法打开包括文件: “httpda.h”: No such file or directory
1>  正在生成代码...
1>  正在编译...
1>  schema.cpp
1>d:\gsoap-2.8\gsoap\visualstudio2005\wsdl2h\wsdl2h\includes.h(41): fatal error C1083: 无法打开包括文件: “httpda.h”: No such file or directory

此时不要慌,根据提示去源码中找到对应的.h和.c文件,拷贝到工程目录,并添加到项目。所需的文件有(以实际编译为主,笔者用的源码版本2.8.102):
httpda.h/cpp、smdevp.h/cpp、threads.h/cpp
在这里插入图片描述
至此,整个编译过程已完成,可根据需要生成win64的exe文件。

了解更多

此文只编译出可用的wsdl2h工具,想了解如何生成onvif框架代码,请移步:用gSOAP工具生成Onvif代码框架

评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值