分类: LINUX
2009-10-04 00:26:03
Boa在ARM平台上的移植
STEP 1:
# cd boa-0.94.13-arm/src
# ./configure
修改Makefile文件,
将CC=gcc改为CC=arm-linux-gcc
将CPP = gcc –E 改为CPP=arm-linux-gcc –E
#make
在这一步用3.4.1和3.3.2交叉编译器时均出现如下错误:
util.c: 100: 1: pasting “t” and “->” does not give a valid preprocessing token make: [util.o] Error1
换成2.95.3交叉编译器后,编译通过。
另一种解决办法是把compat.h中的 foo##->tm_gmtoff的##去掉。
#arm-linux-strip boa //去掉调试信息
STEP 2:
Boa需要在/etc目录下建立一个boa目录,里面放置Boa的主要配置文件boa.conf,Boa源码下已经有一个示例boa.conf,可以在其基础上修改,主要改动如下:
Group nogroup 修改为 Group 0
ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/ 修改为 ScriptAlias /cgi-bin/ /var/www/cgi-bin/
ServerName 去掉这一行的注释,网址可任意。如不去掉这行的注释,会出现如下错误:
gethostbyname:: Resource temporarily unavailable错误。
STEP 3:
创建日志文件所在目录/var/log/boa,创建HTML文档的主目录/var/www,将静态网页存入该目录下(可将主机/usr/share/doc/HTML/目录下的index.html文件和img目录复制到/var/www目录下)。
创建CGI脚本所在目录/var/www/cgi-bin,将cgi的脚本存放在该目录下。
另外还要将mime.types文件复制到/etc目录下,通常可以从Linux主机的/etc目录下直接复制即可。
STEP 4:
将Boa可执行文件复制到根文件系统/usr/bin目录下,烧写根文件系统。
STEP 5:
注意:在运行Boa前要把/var/log/boa挂载上ramfs文件系统,使其可写,否则出现如下错误:
log.c:73 – Unable to dup2 the error log: Bad file r.
在实验箱上运行Boa,在主机IE上输入 或 可看到网页