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。
ubuntu16.04环境编译gSOAP的更多相关文章
- Python3.5 源码安装 Ubuntu16.04环境
安装源码编译所需的各种依赖库:(Ubuntu16.04环境下) sudo apt-get install zlib1g-dev libbz2-dev libssl-dev libncurses5-de ...
- 在ubuntu16.04上编译android源码【转】
本文转载自:http://blog.csdn.net/fuchaosz/article/details/51487585 1 前言 经过3天奋战,终于在Ubuntu 16.04上把Android 6. ...
- Ubuntu16.04下编译安装OpenCV3.4.0(C++ & python)
Ubuntu16.04下编译安装OpenCV3.4.0(C++ & python) 前提是已经安装了python2,python3 1)安装各种依赖库 sudo apt-get update ...
- Ubuntu16.04下编译OpenCV2.4.13静态库(.a文件)
Ubuntu16.04下编译OpenCV2.4.13静态库(.a文件) https://blog.csdn.net/woainishifu/article/details/79712110 我们在做项 ...
- ubuntu16.04下编译ceres-solver
一.编译环境 ubuntu16.04 二.准备工作之安装必要的库 2.1安装cmake sudo apt-get install cmake 2.2 安装google-glog + gflags su ...
- faster-rcnn在ubuntu16.04环境下的超级详细的配置(转)
首先,下载好必须要的安装包.为了方便,我已经全部上传在了百度云. - ubuntu16.04系统 链接:http://pan.baidu.com/s/1geU8piz 密码:25mk - cuda8. ...
- ubuntu16.04下编译安装vim8.1
之前写过一篇centos7下编译安装vim8.0的教程,ubuntu16.04相比centos7下安装过程不同在于依赖包名字的不同,其余都是一样.下面给出ubuntu16.04编译安装vim8.0需要 ...
- Ubuntu16.04环境下搭建基于三台主机的mysql galera cluster集群(实测有效)
(注意: (1)文中红色字体部分不一定需要操作 (2)由于word文档编辑的原因,实际操作时部分命令需要手动输入!!直接复制粘贴会提示错误!! ) 一 搭建环境: 1 Ubuntu16.04版本(系 ...
- Ubuntu16.04下编译安装及运行单目ORBSLAM2
官网有源代码和配置教程,地址是 https://github.com/raulmur/ORB_SLAM2 1 安装必要工具 首先,有两个工具是需要提前安装的.即cmake和Git. sudo apt- ...
随机推荐
- 基础数据类型汇总补充,python集合与深浅拷贝
一.基础数据类型汇总补充 1.查看str所有方法方式 2.列表:在循环中删除元素,易出错或报错(飘红) lis = [11,22,33,44,55] # for i in range(len(lis) ...
- c# 多态实现_虚方法
实现方法: 虚方法, 抽象类, 接口 1.虚方法 将父类的方法标记为虚方法,使用关键字virtual,这个方法可以被子类重新写一遍. 在父类的方法前面加上一个virtual,在子类的方法前面加上一个o ...
- C++头文件记得加#pragma once
C++头文件记得加#pragma once不然可能会导致重定义类
- AJAX相关概念及应用
1.Ajax(Asynchronous JavaScript And XML) 异步的JavaScript和XML XML 可扩展标记语言 Ajax是常用的WEB开发技术,是联系前端和后端的桥梁 应用 ...
- python中遇到的问题:IndentationError: unexpected indent
在Python中写下列代码的时候,出现错误:IndentationError: unexpected indent 分析:IndentationError是缩进的错误,查看源代码发现names开始的这 ...
- js 手机号加密 中间星号表示
var tel = String(this.memberMsg.phoneNo); var dh=tel.substr(0,3)+"******"+tel.substr(8); r ...
- Lucene 的 Field 域和索引维护
一.Field 域 1.Field 属性 Field 是文档中的域,包括 Field 名和 Field 值两部分,一个文档可以包括多个 Field,Document 只是 Field 的一个承载体,F ...
- SpringBoot学习笔记(八):SpringBoot启动端口+访问路、SpringBoot配置文件yml、SpringBoot多环境区分、SpringBoot打包发布
SpringBoot启动端口+访问路径 配置文件: server.port=9090 server.context-path=/springboot 现在只能用http://127.0.0.1:909 ...
- 《DSP using MATLAB》Problem 8.13
代码: %% ------------------------------------------------------------------------ %% Output Info about ...
- python基础数据类型初始,用户交互
一.基础数据类型初始 1.数字:int 1,2,3 print(100,type(100)) ',type('100')) 查看数据类型的方法:type()函数 取值范围: int(整型) 在32位 ...