gSOAP编译工具提供了一个SOAP/XML 关于C/C++ 语言的实现,从而让C/C++语言开发web服务或客户端程序的工作变得轻松了很多。gSOAP支持大多数平台,包括嵌入式系统和小系统。
你首先要定义好c/s通讯的函数接口,通过这些函数接口gSOAP就可以生成server端和client端的框架。生成的客户端(服务端)内部API可以将接收到的xml反序列化成C/C++的数据结构,也可以将本地的C/C++的数据结构序列化成xml格式发送出去。而你只需要分别在server端和client端实现你定义的那些接口就行了。
gSOAP工具主要包括两个可执行文件:wsdl2h和soapcpp2。wsdl2h可以读取.wsdl格式文件并输出.h文件,而soapcpp2则可以读取.h格式文件(wsdl2h生成的或者包含用户自己定义的接口)生成server端和client端的框架。
gSOAP下载地址:https://sourceforge.net/projects/gsoap2/files/
笔者下载的版本为2.8.44,解压以后可以在gsoap/bin文件夹发现有 macosx 和 win32 两个平台的已经编译好的可以执行文件。没有linux平台的。gSOAP生成server端和client端的框架是可以平台使用的,所以如果你完全可以在windows平台上生成你需要的C/C++代码并将其拷贝到其他操作系统操作平台使用。
下面来生成linux平台的wsdl2h和soapcpp2可执行文件。
我的编译环境为ubuntu 16.04 64位。g++ 4.8.5 gcc 4.8.5
1. cd 到你解压出来的文件夹根目录。
test@test-virtual-machine:~/Downloads/gsoap-2.8$ pwd
/home/test/Downloads/gsoap-2.8
- 1
- 2
- 因为我不想安装gsoap到系统内,只想要编译生成的可执行文件,所以我在将安装目录设置为一个非系统目录(例如我自己创建的文件夹gsoap/my_bin)。
~/Downloads/gsoap-2.8$ ./configure --prefix=gsoap/my_bin
- 1
–prefix 参数可以指定你的安装目录。
3.执行 make
错误1.
s/c$/h/` y.output soapcpp2_yacc.output -- yacc -d -v
../../ylwrap: line 176: yacc: command not found
Makefile:521: recipe for target 'soapcpp2_yacc.c' failed
- 1
- 2
- 3
编译出错 : yacc: 未找到命令 , 需要安装yacc
$sudo apt-get install bison
- 1
错误2. /bin/bash ../../ylwrap soapcpp2_lex.l .c soapcpp2_lex.c -- /bin/bash /home/test/Downloads/gsoap-2.8/missing flex
updating lex.yysoapcpp2_lex.c
编译出错 : flex: 未找到命令 , 需要安装flex
sudo apt-get install flex
- 1
还可能安装openssl
sudo apt-get install openssl
- 1
还有openssl的库文件
sudo apt-get install libssl-dev
- 1
最后执行
sudo make install
- 1
安装成功。
安装到可执行文件到我指定的文件夹
转自:https://blog.csdn.net/u010293286/article/details/70182962
参考文章链接:http://www.cnblogs.com/coveted/p/3492342.html
linux-i386(ubuntu)下编译安装gsoap_2.8.17过程记录
过程记录 :
1.下载gsoap_2.8.17.zip 并 解压 : $unzip gsoap_2.8.17.zip
- 原因:error: C++ compiler cannot create executables
- 解决办法:You need to install c++ on your computer. even if you installed gcc that doesn’t automatically install g++. Try to run one of the following commands that fit your Linux distribution best :)
- yum install gcc-c++ or apt-get install gcc-c++ . if apt-get doesn’t like the command try :apt-get install g++
4.编译安装 : $sudo make
执行命令 : $sudo apt-get install bison
出错
编译成功!
5.安装 sudo make install