将gsoap-2.8压缩包上传到服务器,解压到/opt/gsoap-2.8目录,进入目录,执行如下的命令编译出wsdl2h,soapcpp2可执行程序
编译指令
./configure --prefix=/opt/gsoap(你自己的选择的安装路径)
sudo make
make install
cd /opt/gsoap/bin
这个之后,我们需要将/opt/gsoap-2.8/gsoap/typemap.dat,以及同一级目录下的文件夹import ,custom, plugin拷贝到/opt/gsoap/bin目录下
在当前目录存在wsdl2h,soapcpp2可执行程序,通过如下两个指令生成代码
[root@localhost test]# ./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/deviceio.wsdl http://www.onvif.org/onvif/ver10/network/wsdl/remotediscovery.wsdl
生成文件onvif.h
[root@localhost test]# ./soapcpp2 -c onvif.h -x -L -I./custom -I./plugin -I./import
最终的目录如下:
[root@localhost test]# ls
custom import plugin soapClient.c soapServer.c wsdd.nsmap
DeviceBinding.nsmap MediaBinding.nsmap RemoteDiscoveryBinding.nsmap soapcpp2 soapStub.h wsdl2h
DeviceIOBinding.nsmap onvif.h soapC.c soapH.h typemap.dat
来源:oschina
链接:https://my.oschina.net/u/4410144/blog/3421208