小白一步一个脚印,手把手,教你安装使用gsoap
安装
去官网拿到gsoap安装包。作者使用的gsoap_2.8.10.zip。
unzip gsoap_2.8.10.zip --解压安装包。
./configure --检查安装环境。 如果失败(出现error的),根据错误提示,安装相关的包。如果安装了openssl,还提示找不到-lssl,用root安装yum install openssl-devel(如遇其它,参考这篇博客http://blog.csdn.net/learnhard/article/details/5154262)
make --编译。
make install --安装。
记得多看看README NOTE INSTALL这些文件,别因为懒就不看。
安装成功后会出现打印如下提示
+--------------------------------------------------------+
| You now have successfully built and installed gsoap. |
| |
| You can link your programs with -lgsoap++ for |
| C++ projects created with soapcpp2 and you can link |
| with -lgsoap for C projects generated with soapcpp2 -c |
| |
| There are also corresponding libraries for SSL and |
| zlib compression support (-lgsoapssl and lgsoapssl++) |
| which require linking -lssl -lcrypto -lz |
| |
| Thanks for using gsoap. |
| |
| http://sourceforge.net/projects/gsoap2 |
+--------------------------------------------------------+
使用
mkdir soap --新建一个目录soap。
wget http://www.genivia.com/calc.wsdl --拿到测试用的wsdl文档,当然如果你有自己的文档更好,一样的。
/usr/local/bin/wsdl2h -c -o calc.h calc.wsdl --用wsdl2h工具将wsdl文档编译成calc.h头文件。
/usr/local/bin/soapcpp2 -Lc calc.h --将calc.h文件编译成为编程需要的多个文件,比如实现文件,xml样板等。
编写main.c
#include "soapH.h" #include "calc.nsmap" main() { struct soap *soap = soap_new(); double result; if (soap_call_ns__add(soap, 1.0, 2.0, &result) == SOAP_OK) printf("The sum of 1.0 and 2.0 is %lg\n", result); else soap_print_fault(soap, stderr); soap_end(soap); soap_free(soap); }
gcc main.c soapC.c soapClient.c $(安装包路径)/gsoap-2.8/gsoap/stdsoap2.c
主要就是这个stdsoap2.c文件,如果编译的时候不包含它,那么会有很多函数找不到实现。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 单线程的Redis速度为什么快?
· 展开说说关于C#中ORM框架的用法!
· SQL Server 2025 AI相关能力初探
· Pantheons:用 TypeScript 打造主流大模型对话的一站式集成库