Chinaunix首页 | 论坛 | 博客
  • 博客访问: 101690
  • 博文数量: 16
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 648
  • 用 户 组: 普通用户
  • 注册时间: 2013-06-02 20:30
文章分类
文章存档

2013年(16)

我的朋友

分类: 嵌入式

2013-08-03 22:41:06

不得不先汗颜下-。-、、、百度各种大牛在写教程连在哪个平台输入的也不说,小弟我看着都是代码一直打下来,最后才知道原来有的是在LINUX终端下,有的是ARM下。如果哪位习惯发教程的大牛无意看到了,麻烦下次写教程高抬贵手,写明白点,急着学的时间伤不起啊。。。
好了废话不多说,进入主题。

使用平台:RETHAT LINUX5.5
使用源码包:boa-0.94.13.tar.gz(下载地址
使用编译工具:arm-linux-gcc 4.3.3
使用开发板:TQ2440
PS:这里使用NFS共享目录,以便后期调试,用TFTP的请做适当调整。
实验步骤:
1、我的NFS默认目录/nfsroot/a,先把源码包拷贝到该目录下,然后使用
#tar xvf boa-0.94.13.tar.gz –C ./ 解压到当前目录。
2、进入/boa-0.94.13/src目录下,使用 #./configure 生成Mikefile文件。然后作如下修改:
 把CC=gcc 改为CC=arm-linux-gcc
 把CPP=gcc –E 改为 CPP=arm-linux-gcc –E
 然后保存。
3、检查 defines.h文件中

 #ifndef SERVER_ROOT
 #define SERVER_ROOT  “XXX
 #endif
 上面的XXX为你后期存放boa.conf文件的目录,这里建议使用”/etc/boa”。
4、修改compat.h如下:
 把#define TIMEZONE_OFFSET(foo) foo##->tm_gmtoff
 改为#define TIMEZONE_OFFSET(foo) foo->tm_gmtoff
5、修改log.c如下:
 注释掉如下内容:
        /*if (dup2(error_log, STDERR_FILENO) == -1) {
            DIE("unable to dup2 the error log");
        }*/
6、修改boa.c注释掉以下两部分:
 #if 0       
 if (passwdbuf == NULL) {
            DIE("getpwuid");
        }
        if (initgroups(passwdbuf->pw_name, passwdbuf->pw_gid) == -1) {
            DIE("initgroups");
        }
 #endif
 注意,这里用 #if 0 和 #endif 结合注释,下同。
 #if 0
        if (setuid(0) != -1) {
            DIE("icky Linux kernel bug!");
        }
   
 #endif
7、使用 #make 编译,再使用 #arm-linux-strip boa 去掉调试信息,以减小boa的体积。
8、你进一个你想用开发板WEB访问的网页,保留源代码,注意是html后缀的,改名为“index.html”,然后先放到/src这同一目录下吧,等下才容易讲。
9、使用 #cp –f /etc/boa.conf ./ 把boa.conf复制到/src目录下,使用 #cp –f /etc/mime.types ./把mime.types 复制到/src目录下。
修改boa.conf :
User nobody
Group nobody
/*以上两个nobody都改为0*/
ScriptAlias /cgi-bin/ /var/www/cgi-bin/ 地址要和后期网页存放一致。
   
10、现在开始使用ARM开发板平台了,一般我们都是用串口工具交互的,以下都在窗口工具里输入(一般你系统启动后打回车键就可以输入命令了)。首先,挂载NFS,使用命令 #mount –t nfs –o nolock 192.168.1.100:/nfsroot/n /mnt 挂载到开发板/mnt目录下,具体NFS设置自己去学。
11、进入/mnt/boa-0.94.13/src目录下,使用 # cp boa /bin复制boa到/bin目录下。
12、使用#mkdir /etc/boa在/etc下新建目录boa/ ,然后使用 #cp boa.conf /etc/boa复制boa.conf到boa/目录下。
13、使用#mkdir /var/log/boa新建日志文件目录,在使用#mkdir /var/www新建存放html的目录,使用#cp index.html /var/www 。最后再使用#mkdir /var/www/cgi-bin新建CGI脚本目录。
14、使用 #cp mime.types /etc ,然后进入/bin 目录,使用 # ./boa 运行boa,这是后,你在你的电脑平台或linux平台下浏览器输入你的开发板IP就能进入你之前存放的网页了。

 

阅读(2416) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~