ubuntu16.04环境编译gSOAP
一、gSOAP简介
SOAP 是基于 XML 的简易协议,可使应用程序在 HTTP 之上进行信息交换。或者更简单地说:SOAP 是用于访问网络服务的协议。
SOAP 提供了一种标准的方法,使得运行在不同的操作系统并使用不同的技术和编程语言的应用程序可以互相进行通信。
Soap是一种简单对象访问协议,是一种轻量的、简单的、基于 XML 的协议,它被设计成在 WEB 上交换结构化的和固化的信息。它是一种通信协议,用于Web应用程序之间的因特网通信,它提供一组不受平台和语言限制的方法使应用程序得以相互之间进行Intertnet通信。
gSoap可以看做是对soap的一个实现封装,提供了一个SOAP/XML 关于C/C++ 语言的实现,它隐藏了在调用WebService中的大量实现细节,从而让C/C++语言开发web服务或客户端程序的工作变得轻松了很多。
二、gSOAP下载、编译及安装
gSOAP下载地址:https://sourceforge.net/projects/gsoap2/files/
这里下载和编译的是gsoap_2.8.82。
1、编译、安装流程
(1)解压gsoap_2.8.82.zip
unzip gsoap_2.8.82.zip
解压成gsoap-2.8文件夹
(2)进入gsoap-2.8
cd gsoap-2.8
(3)配置编译环境
sudo ./configure --prefix=/usr/local/gsoap2.8
注:默认安装在/usr/local/下;编译及安装的路径可通过--prefix进行配置,这里安装路径为/usr/local/gsoap2.8,路径是root权限,所以使用sudo进入root权限。
(4)编译
sudo make
(5)安装
sudo make install
如果不出错,gSOAP就编译安装成功了,但是错误总是不可避免的,下面就是在编译过程中遇到的错误。
2、编译过程出现的错误
编译 sudo make
编译出错,如图所示缺少openssl相关的库,执行下面命令进行安装:
sudo apt-get install openssl
sudo apt-get install libssl-dev
继续编译,sudo make
又有错误出现,编译失败,如图显示yacc:command not found,执行下面命令安装:
sudo apt-get install bison
继续编译,sudo make:
编译出错,flex相关错误,安装flex:
sudo apt-get install flex
然后继续安装下面两个库:
sudo apt-get install libgtk2.0-dev libglib2.0-dev
继续编译,sudo make
至此编译成功
sudo make install 进行安装。
三、总结:
编译过程会依赖一些库,需要进行安装,主要有:libgtk2.0-dev 、libglib2.0-dev、flex、 bison、openssl、 libssl-dev。