Boa在嵌入式Linux上的移植

本文也是在网上从多的移植文章中修改添加得来的。

Boa程序的移植

1、下载Boa源码

    下载地址: http://www.boa.org/, 或者http://sourceforge.net

    最新发行版本: 0.94.13

    下载 boa-0.94.13.tar.gz,注意:从boa上下载的是boa-0.94.13.tar.tar,解压方式一样

    解压:# tar xzf boa-0.94.13.tar.gz

2、生成Makefile文件

    直接运行src/configure文件,在运行之前,查看一下是否具有可执行权限

3、修改Makefile文件

修改 CC = gcc

为 CC = arm-linux-gcc(也可以使用绝对路径,网上说得用2.95.3编译,高一点的编译器会报错,这一点,我没有去验证,我用的就是2.95.3)

修改 CPP = gcc - E

为 CPP = arm-linux-gcc -E

4、编译

# make      这一步编译时用编译工具用2.95.3以上的版本会出错:
                           util.c: 100: 1: pasting “t” and “->” does not give valid preprocessing token make: [util.o] Error1

                       解决方法:
                       方法1>. 修改compat.h中的
                 #define TIMEZONE_OFFSET(foo) foo##->tm_gmtoff
                  为:
                 #define TIMEZONE_OFFSET(foo) foo->tm_gmtoff

                方法2>. 改用2.95.3版本的编译器。

# arm-linux-strip boa(去掉boa中的调试信息)

第二步 Boa的配置

    Boa需要在/etc目录下建立一个boa目录,里面放入Boa的主要配置文件boa.conf。在Boa源码目录下已有一个示例boa.conf,可以在其基础上进行修改。关于boa.conf文件当中各配置选项的定义在文章的结尾后面附带,这儿是摘抄网上一篇博客上的文章中的,原文链接地址如下:http://hi.baidu.com/lucku17/blog/item/a4ab911893962b0134fa4137.html

 

1、Group的修改

修改 Group nogroup

为 Group 0

由于在/etc/group文件中没有nogroup组,所以设成0。另外在/etc/passwd中有nobody用户,所以User nobody不用修改。其实若是根用户,也不用修改,我移植之后,就没有修改,就是

User root

Group root

这样也行,关键是看你的/etc/group文件中是否有这个组和这个组中是否有这个用户。


2、ScriptAlias的修改

修改 ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/

为 ScriptAlias /cgi-bin/ /var/www/cgi-bin/


3、ServerName的设置

修改 #ServerName www.your.org.here

为   ServerName www.your.org.here


    注意:该项默认为未打开,执行Boa会异常退出,提示“gethostbyname::No such file or directory”,所以必须打开。其它默认设置即可。

相关推荐