剪裁Onvif:减小soapC.cpp文件的大小(二)
来源:互联网 发布:fanuc系统编程软件 编辑:程序博客网 时间:2024/05/06 21:40
gSOAP生成的onvif框架代码太大了,可以通过以下方法裁剪
1. 编译选项
-DWITH_NOIDREF
2. 修改生成的代码,去掉所有的soap_default_xxx,这些函数里面都是将结构体的成员置为0的,完全可以用memset来代替。
修改方法:首先删掉这些函数:
cat onvifC.c |awk -F' ' 'BEGIN{i=0} /SOAP_FMAC3 void SOAP_FMAC4 soap_default_/{i=1;} /}/{if(i==1){i=0;}} {if(i==0){print $0}}'>all_no_default.c用正则表达式替换原来的函数为memset即可。
% s/soap_default_\([_a-zA-Z0-9]*\)[ ]*(soap, \(.*\));/memset(\2, 0, sizeof(struct \1));/g<p> % s/struct byte/char/g</p> ……
当然修改后会有一些替换错误的,比如enum定义被替换成struct了,不是很多,手动改下就好了。
暂时想到的就这些,如果大家有更好的方法,欢迎交流一下。
————————以上内容摘自 gSOAP代码的裁剪
1、gSOAP代码的裁剪;
0 0
- 剪裁Onvif:减小soapC.cpp文件的大小(二)
- 剪裁Onvif:减小soapC.cpp文件的大小(一)
- Onvif剪裁(二)
- 如何减小SWF文件的大小
- 如何减小APK文件的大小
- 减小VirtualBox虚拟硬盘文件的大小
- 减小字体文件的大小方案
- 减小apk的大小
- 减小APK的大小
- 如何减小Lazarus编译出的文件的大小
- 如何减小在VS2013下生的exe文件的大小.
- 演示更流畅 减小幻灯片文件的存储大小
- VC6中减小生成EXE文件的大小
- 如何减小可执行文件的大小
- 减小App包的大小
- 减小iOS应用程序的大小
- 减小iOS应用程序的大小
- 减小静态库的大小
- Qt 事件循环机制 & 事件过滤器
- 关于线程的一些问题
- 零长数组
- pat 1063
- fwrite写入文件大小错误的问题
- 剪裁Onvif:减小soapC.cpp文件的大小(二)
- 【android】自定义控件属性设置
- radio控件的使用
- 验证服务新方法
- 回首过去 展望未来
- 使用cron定时执行ubuntu里面的shell application
- 膜拜性转帖: C++11有关的(现在用的编译器都是不太支持C++11的)
- 递归构建二叉树---中序遍历二叉树(递归与非递归)
- 浅谈深复制和浅复制