ONVIF->Mac下gSOAP的使用

Mac系统下的使用->

安装过程可能会warning 提示需要安装openSSL,openSSL的安装将在下篇文章介绍。

1.下载gSOAP,这里使用的版本是2.8.14

2.解压后,终端进入目录下的gsoap-2.8

3.安装步骤如下:

./configure

make

make install

安装完成,接下来就是生成ONVIF开发环境框架了。这里是使用的在线生成方式,需要保证网络连接良好

框架生成

1.首先生成头文件

1):新建一个文件夹,用来放新生成的文件,例onvif_new

2):将soap目录下得typemap.dat文件拷贝到onvif_new目录下

3):终端进入onvif_new,执行以下命令

~onvif_new$: wsdl2h -o onvif.h -c -s -t ./typemap.dat

http://www.onvif.org/onvif/ver10/device/wsdl/devicemgmt.wsdl

http://www.onvif.org/onvif/ver10/media/wsdl/media.wsdl

http://www.onvif.org/onvif/ver10/event/wsdl/event.wsdl

http://www.onvif.org/onvif/ver10/display.wsdl

http://www.onvif.org/onvif/ver10/deviceio.wsdl

http://www.onvif.org/onvif/ver20/imaging/wsdl/imaging.wsdl

http://www.onvif.org/onvif/ver10/receiver.wsdl

http://www.onvif.org/onvif/ver20/ptz/wsdl/ptz.wsdl

http://www.onvif.org/onvif/ver10/recording.wsdl

http://www.onvif.org/onvif/ver10/search.wsdl

http://www.onvif.org/onvif/ver10/network/wsdl/remotediscovery.wsdl

http://www.onvif.org/onvif/ver10/replay.wsdl

http://www.onvif.org/onvif/ver20/analytics/wsdl/analytics.wsdl

http://www.onvif.org/onvif/ver10/analyticsdevice.wsdl

http://www.onvif.org/ver10/actionengine.wsdl

http://www.onvif.org/ver10/pacs/accesscontrol.wsdl

http://www.onvif.org/ver10/pacs/doorcontrol.wsdl

以上地址来自onvif官网,可以自己核对官网查看

每个网址之间用空格分开,执行完成即可生成头文件onvif.h

2.生成源文件

命令为:

onvif_new $: soapcpp2 -c onvif.h -x -I import路径 -I gsoap路径

-c表示生成c代码,否则就是c++代码

生成过程中会有错误如下:

wsa5.h(288): **ERROR**: remote method name clash: struct/class 'SOAP_ENV__Fault' already declared at line 274

重复定义导致,打开import目录下wsa5.h 将277行int SOAP_ENV_Fault修改为int SOAP_ENV_Fault_some,再生成就可以了。

成功就可以看到生成的源文件和不同功能对应的命名空间,命名空间后缀为nsmap,内容一样,只需保留一个修改名字为wsdd.h

删除soapClientLib.c和soapServerLib.c文件

将soap目录下的stdsoap2.h和stdsoap2.c文件以及custom目录下的duration.c文件都拷贝到当前目录下,至此Onvif的开发环境框架完成,客户端开发使用soapClient.c文件,服务端开发使用soapServer.c

#import "soapH.h"即可

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 135,314评论 19 139
  • 1. Java基础部分 基础部分的顺序:基本语法,类相关的语法,内部类的语法,继承相关的语法,异常的语法,线程的语...
    子非鱼_t_阅读 31,898评论 18 399
  • 一. Java基础部分.................................................
    wy_sure阅读 9,233评论 0 11
  • Ubuntu的发音 Ubuntu,源于非洲祖鲁人和科萨人的语言,发作 oo-boon-too 的音。了解发音是有意...
    萤火虫de梦阅读 99,757评论 9 468
  • i-EDU教育产业投资人俱乐部 “投资人论道”第16期 暨国际教育信息共享与合作(线下)沙龙 诚邀您出席 参加本次...
    雒阁阅读 1,781评论 0 0