查看: 1837|回复: 0

[经验] 嵌入式学习-ElfBoard ELF 1板卡- 移植boa的方法

[复制链接]

该用户从未签到

发表于 2024-2-2 09:28:21 | 显示全部楼层 |阅读模式
分享到:
本帖最后由 eefocus_3860969 于 2024-2-2 09:37 编辑

boa是一个非常轻量级的web服务器,专门设计用于嵌入式系统或低端设备上,因此可以在资源受限的环境下运行。如果你需要在嵌入式设备或其他资源受限的环境中提供web服务,那么使用boa可能是一个不错的选择。此外,boa还具有容易定制和扩展的特点,使得它可以被用于各种不同的应用场景。
下面来介绍基于ELF 1开发板移植boa的方法。

1boa官网下载源码
下载好的boa源码为:boa-0.94.13.tar.gz

2、将源码拷贝到虚拟机并解压
elf@ubuntu:~/work/a/boa$ tar xvf boa-0.94.13.tar.gz

3、进行交叉编译
elf@ubuntu:~/work/a/boa$ cd boa-0.94.13/src/
elf@ubuntu:~/work/a/boa/boa-0.94.13/src$ . /opt/fsl-imx-x11/4.1.15-2.0.0/environment-setup-cortexa7hf-neon-poky-linux-gnueabi
elf@ubuntu:~/work/a/boa/boa-0.94.13/src$ ./configure --host=arm
elf@ubuntu:~/work/a/boa/boa-0.94.13/src$ make

报错
640.png

修改src/compat.h文件中的如下位置:
elf@ubuntu:~/work/a/boa/boa-0.94.13/src$ vi compat.h

#define TIMEZONE_OFFSET(foo) foo##->tm_gmtoff
修改为 #define TIMEZONE_OFFSET(foo) (foo)->tm_gmtoff

修改完成,保存退出,继续make,之后就不会报错了。
至此交叉编译boa已经完成,接下来在开发板上进行测试。

1开发板中建立boacgi-bin录,
root@ELF1:~# cd /etc/
root@ELF1:/etc# mkdir boa
root@ELF1:/etc# mkdir -p /www/cgi-bin/
root@ELF1:/etc# mkdir group

2可执行应用和一些配置文件通过scp命令拷贝到开发板中。
elf@ubuntu:~/work/a/boa/boa-0.94.13/src$ scp boa root@192.168.2.98:/etc/boa/
elf@ubuntu:~/work/a/boa/boa-0.94.13/src$ scp ../boa.conf root@192.168.2.98:/etc/boa/
elf@ubuntu:~/work/a/boa/boa-0.94.13/src$ scp /etc/mime.types root@192.168.2.98:/etc/

3修改boa.conf文件
root@ELF1:~# vi /etc/boa/boa.conf

需要做如下修改:

Group nogroup改为Group 0
指定 log 文件的路径,把log保存到/etc/boa目录下
ErrorLog /var/log/boa/error_log 改为ErrorLog /etc/boa/error_log
AccessLog /var/log/boa/access_log 改为AccessLog /etc/boa/access_log
#ServerName www.your.org.here改为ServerName www.your.org.here
DocumentRoot /var/www修改为DocumentRoot /www
⑤ 将ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/改为ScriptAlias /cgi-bin/ /www/cgi-bin/

4、/www/下创建index.html
root@ELF1:/etc# vi /www/index.html

并编写加入以下内容:
<!DOCTYPE html>
<html xmlns="http://www/w3.org/1999/xhtml">
                <head>
                        <meta http-equiv="Content-type" content="text/html;charset-gb2312">
                        <title>Isaigu_gateway</title>
<style type="text/css">
<!--
        .STYLE1{font-size:45px}
        body{
                background-color: #ADD8E6;
        }
        -->
</style>
        </head>
        <body>
                <table width="613" height="424" border="0" align="center">
                        <tr>
                                        <td colspan="2" align="center" valign="middle"><h2
                                                class="STYLE1">Hello ElfBoard
                                        </h2></td>
                        </tr>
                        </tr>
                                <td> </td>
                                <td> </td>
                        <tr>
                </table>
        </body>
</html>

5在开发板执行应用
root@ELF1:~# /etc/boa/boa

6在浏览器输入开发板IP,效果如下
微信图片_20240202083854.png

boa的移植到这里就完成啦。小伙伴们学会了吗?

回复

使用道具 举报

您需要登录后才可以回帖 注册/登录

本版积分规则

关闭

站长推荐上一条 /4 下一条



手机版|小黑屋|与非网

GMT+8, 2024-12-19 00:04 , Processed in 0.124545 second(s), 17 queries , MemCache On.

ICP经营许可证 苏B2-20140176  苏ICP备14012660号-2   苏州灵动帧格网络科技有限公司 版权所有.

苏公网安备 32059002001037号

Powered by Discuz! X3.4

Copyright © 2001-2024, Tencent Cloud.