首页 理论教育 移植CGIC库的实例

移植CGIC库的实例

时间:2023-10-31 理论教育 版权反馈
【摘要】:CGIC是一个支持CGI开发的开放源码的标准C库,可以免费使用,只需要在开发的站点和程序文档中有个公开声明即可,表明程序使用了CGIC库。CGIC库的具体下载站点是http://www.boutell.com/cgic/cgic205.tar.gz,目前最新版本为cgic205版。cgictest.cgi比较完整地展现了CGIC库的功能,在开发基于CGIC库的CGI程序前最好先掌握cgictest.cgi程序,这也是用户开发特定应用程序时的参考范例。

移植CGIC库的实例

在进行CGI编程之前,先了解HTML的一些知识。CGI可以使用多种编程语言来实现,包括C、C++和Perl等,但在嵌入式设备的开发中,一般都不会采用Perl等解释性语言,因为这种语言还需要有解释执行的支撑模块,会占用存储空间和内存。最常用的方法是用C来编写,但C并不是很适合开发像CGI这种需要大量进行字符串操作的程序,编程比较烦琐。因此,对于一个专业的开发人员来说,首先想到的应该是有没有可复用的库来支持快速高效的开发CGI程序。幸运的是,目前就有不少开放源码的支持CGI开发的C库。在此只介绍CGIC,有兴趣的读者可以在Internet上搜索其他的C库。

CGIC是一个支持CGI开发的开放源码的标准C库,可以免费使用,只需要在开发的站点和程序文档中有个公开声明即可,表明程序使用了CGIC库。用户也可以购买商业授权而无需公开声明。CGIC能够提供以下功能:

●分析数据,并自动校正一些有缺陷的浏览器发来的数据。

●透明接收用GET或POST方法发来的From数据。

●能接受上传文件。

●能够设置和接收Cookies。

●用一致的方式处理From元素里的回车。

●提供字符串、整数、浮点数、单选或多选功能来接收数据。

●提供数字字段的边界检查。

●能够将CGI环境变量转化成C中的非空字符串。

●提供CGI程序的调试手段,能够回放CGI程序执行时的CGI状态。(www.xing528.com)

总之,CGIC是一个功能比较强大的支持CGI开发的标准C库,并支持Linux、UNIX和Windows等多操作系统。

CGIC库的具体下载站点是http://www.boutell.com/cgic/cgic205.tar.gz,目前最新版本为cgic205版。

下载后,解压到“/opt/EmbedSky/”目录下,会生成目录cgic205:

配置编译条件,进入cgic205目录,修改Makefile文件。下面是修改后的文件内容:

修改后保存退出,下面编译并优化

编译,会在目录下生成capture的可执行文件和测试用的cgictest.cgi文件:

优化:

会把capture由原来的100K左右变成现在的29K左右。

工作站的浏览器地址栏中输入http://192.168.67.16/cgi-bin/cgictest.cgi可以看到页面,表示CGIC库和测试脚本都移植成功。cgictest.cgi比较完整地展现了CGIC库的功能,在开发基于CGIC库的CGI程序前最好先掌握cgictest.cgi程序,这也是用户开发特定应用程序时的参考范例。

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈