libcgi库安装

 官网:https://boutell.com/cgic/#build

1. 可直接tar包安装

tar xvf libcgi-1.0.tar.gz
cd libcgi-1.0
./configure
make
cd src

sudo cp libcgi.so /usr/lib
sudo cp cgi.h session.h /usr/include

写代码时包含头文件应写:
#include <cgi.h>
#include <session.h>

学习libcgi库的方法:
源码包目录/doc/html目录下有一个index.html是帮助文档。
源码包目录/examples目录下是各种示例程序,结合帮助文档研究它们是如何工作的。

2. apt-get源上安装
sudo apt-get install libcgic-dev

注:apt-get安装软件时下载的包存放在目录:/var/cache/apt/archives
包含头文件需要写:
#include <cgic.h>

在libcgic 2.0+,主程序主要实现cgiMain()函数。

一般编译命令:gcc cgictest.c -lcgic

注:通过dpgk -c libcgic-dev_2.05-3_i386.deb可查看文件安装目录

~$dpkg  -c libcgic-dev_2.05-3_i386.deb 
drwxr-xr-x root/root         0 2012-05-24 23:13 ./
drwxr-xr-x root/root         0 2012-05-24 23:13 ./usr/
drwxr-xr-x root/root         0 2012-05-24 23:13 ./usr/share/
drwxr-xr-x root/root         0 2012-05-24 23:13 ./usr/share/doc/
drwxr-xr-x root/root         0 2012-05-24 23:13 ./usr/share/doc/libcgic-dev/
drwxr-xr-x root/root         0 2012-05-24 23:13 ./usr/share/doc/libcgic-dev/examples/
-rw-r--r-- root/root      4299 2004-04-23 04:49 ./usr/share/doc/libcgic-dev/examples/cgictest.c.gz
-rw-r--r-- root/root       338 2004-04-23 04:49 ./usr/share/doc/libcgic-dev/examples/capture.c
-rw-r--r-- root/root    105885 2004-11-16 00:59 ./usr/share/doc/libcgic-dev/cgic.html
-rw-r--r-- root/root       990 2012-05-24 23:13 ./usr/share/doc/libcgic-dev/copyright
drwxr-xr-x root/root         0 2012-05-24 23:13 ./usr/lib/
-rw-r--r-- root/root     29364 2012-05-24 23:13 ./usr/lib/libcgic.a
drwxr-xr-x root/root         0 2012-05-24 23:13 ./usr/include/
-rw-r--r-- root/root      7403 2004-04-23 04:49 ./usr/include/cgic.h
lrwxrwxrwx root/root         0 2012-05-24 23:13 ./usr/share/doc/libcgic-dev/changelog.Debian.gz -> ../libcgic2/changelog.Debian.gz
lrwxrwxrwx root/root         0 2012-05-24 23:13 ./usr/lib/libcgic.so -> libcgic.so.2.05

3. 安装目录下capture.c为标准范例

#include "cgic.h"                                                               

int cgiMain() {
    cgiWriteEnvironment("/CHANGE/THIS/PATH/capcgi.dat");
    cgiHeaderContentType("text/html");
    fprintf(cgiOut, "<title>Captured</title>\n");
    fprintf(cgiOut, "<h1>Captured</h1>\n");
    fprintf(cgiOut, "Your form submission was captured for use in\n");
    fprintf(cgiOut, "debugging CGI code.\n");
    return 0;
}

 

参考:

1. http://webjs.blog.sohu.com/301265970.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值