0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

ELF 1技术贴|如何移植Boa 到开发板上

ElfBoard 2024-02-04 09:30 次阅读

Boa作为一款专为嵌入式系统打造的轻量级Web服务器,其核心优势在于能够在严苛的硬件条件下稳定运行,Boa出色的可定制性和扩展潜能适用于多种应用情境。当面对嵌入式装置或其他计算资源有限的平台时,部署Boa作为Web服务解决方案显得尤为适宜。

接下来,将跟各位小伙伴详细介绍一下基于ELF 1开发板移植Boa的方法。

1、Boa官网下载源码

官网网址:Boa download | SourceForge.net下载好的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

这时会出现报错,如下图显示:

wKgaomW-5s-APjM5AAGMXp2MPtQ002.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、开发板中建立Boa和cgi-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

需要做如下修改:

1、将Group nogroup改为Group 0

2、指定 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

3、将#ServerName www.your.org.here改为ServerName www.your.org.here

4、将DocumentRoot /var/www改为DocumentRoot /www

5、将ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/改为ScriptAlias /cgi-bin/ /www/cgi-bin/

4、在/www/下创建index.html

root@ELF1:/etc# vi /www/index.html

并编写加入以下内容:

<2;title>Isaigu_gateway<2;/title>

Hello ElfBoard

5、在开发板执行应用

root@ELF1:~# /etc/boa/boa

6、在浏览器输入开发板IP,效果如下

wKgaomW-5-KAT0gVAABtldjmiaQ785.png

至此Boa的移植就完成了,希望各位小伙伴不仅能掌握这项技能,还能享受在嵌入式技术海洋中不断探索的乐趣,并期待你们在接下来的学习道路上越走越远,能够在嵌入式技术领域独当一面!

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 嵌入式
    +关注

    关注

    5076

    文章

    19045

    浏览量

    303860
  • 嵌入式系统
    +关注

    关注

    41

    文章

    3575

    浏览量

    129287
  • 开发板
    +关注

    关注

    25

    文章

    4979

    浏览量

    97273
收藏 人收藏

    评论

    相关推荐

    ELF 1技术|在NXP源码基础适配开发板的按键功能

    ELF1开发板。接下来,我们将详细阐述适配过程中关于按键功能实现的完整步骤。值得一提的是,ELF1开发板预置了标识为K
    的头像 发表于 03-08 16:58 933次阅读
    <b class='flag-5'>ELF</b> <b class='flag-5'>1</b><b class='flag-5'>技术</b><b class='flag-5'>贴</b>|在NXP源码基础<b class='flag-5'>上</b>适配<b class='flag-5'>开发板</b>的按键功能

    ElfBoard技术|如何在NXP源码基础适配ELF 1开发板的UART功能

    UART即通用异步收发器,是一种支持全双工串行通信协议的接口。在i.MX6ULL处理器平台上,该处理器原生支持多达8路的UART接口,提供了丰富的串行通信能力。 针对ELF 1开发板,实际引出
    的头像 发表于 09-25 13:56 2262次阅读
    ElfBoard<b class='flag-5'>技术</b><b class='flag-5'>贴</b>|如何在NXP源码基础<b class='flag-5'>上</b>适配<b class='flag-5'>ELF</b> <b class='flag-5'>1</b><b class='flag-5'>开发板</b>的UART功能

    I.MX6ULL-ElfBoard ELF1板卡- 移植boa的方法

    以下内容: 5、在开发板执行应用 root@ELF1:~# /etc/boa/boa6、在浏览器输入开发板IP,效果如下
    发表于 02-02 09:19

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

    的选择。此外,boa还具有容易定制和扩展的特点,使得它可以被用于各种不同的应用场景。 下面来介绍基于ELF 1开发板移植
    发表于 02-02 13:34

    如何移植boa服务器目标开发板

    目标开发板呢?从我个人来讲,主要是开发和调试方便,一方面是方便修改html页面和cgi程序,另一方面如果在移植目标
    发表于 12-14 06:45

    如何移植OpenHarmony 3.0 星空派开发板

    9 月 30 日,OpenHarmony 3.0 LTS 版本发布。本文将介绍如何移植 OpenHarmony 3.0 星空派开发板。 星空派
    的头像 发表于 10-19 09:08 2455次阅读
    如何<b class='flag-5'>移植</b>OpenHarmony 3.0 <b class='flag-5'>到</b>星空派<b class='flag-5'>开发板</b><b class='flag-5'>上</b>

    嵌入式linux开发板web服务器搭建1——Boa移植

    嵌入式linux开发板web服务器Boa移植笔记环境Ubuntu10.04.4boa-0.94.13主要步骤主要参考https://wenku.baidu.com/view
    发表于 11-01 18:00 16次下载
    嵌入式linux<b class='flag-5'>开发板</b>web服务器搭建<b class='flag-5'>1</b>——<b class='flag-5'>Boa</b><b class='flag-5'>移植</b>

    MQTT移植stm32开发板——使用TencentOS tiny操作系统

    手把手教你将MQTT客户端移植stm32开发板,使用TencentOS tiny官方开发板——TencentOS_tiny_EVB_MX
    发表于 12-08 13:21 6次下载
    MQTT<b class='flag-5'>移植</b><b class='flag-5'>到</b>stm32<b class='flag-5'>开发板</b>——使用TencentOS tiny操作系统

    关于ELF1/ELF1S开发板的音频接口,你需要知道的都在这!

    音乐可以将平凡的画面赋予深厚的意义,那么音频接口就是这个支点;今天就来给大家详细介绍一下ELF1/ELF1S开发板的音频接口。ELF1/ELF1
    的头像 发表于 10-31 14:10 682次阅读
    关于<b class='flag-5'>ELF1</b>/<b class='flag-5'>ELF1</b>S<b class='flag-5'>开发板</b>的音频接口,你需要知道的都在这!

    ELF 1技术|在NXP源码基础适配ELF 1开发板的LED功能

    本次源码适配工作是在NXPi.MX6ULLEVK评估的Linux内核源码(特定版本:Linux-imx_4.1.15)基础上进行的。主要目标是调整功能接口引脚配置,以适应ELF1开发板。下面以
    的头像 发表于 12-29 10:04 825次阅读
    <b class='flag-5'>ELF</b> <b class='flag-5'>1</b><b class='flag-5'>技术</b><b class='flag-5'>贴</b>|在NXP源码基础<b class='flag-5'>上</b>适配<b class='flag-5'>ELF</b> <b class='flag-5'>1</b><b class='flag-5'>开发板</b>的LED功能

    如何将Go程序编译ELF 1开发板

    编译并运行在ELF1开发板的。一、在GoLand中配置(一)配置SSH连接Ubuntu虚拟机以及ELF1开发板
    的头像 发表于 01-29 10:42 506次阅读
    如何将Go程序编译<b class='flag-5'>到</b><b class='flag-5'>ELF</b> <b class='flag-5'>1</b><b class='flag-5'>开发板</b>

    ELF 1技术|如何将Python3.6.9移植开发板

    如何进行交叉编译并移植ELF1开发板。在网址:https://www.python.org/ftp/python/下载Python-3.
    的头像 发表于 02-22 14:06 414次阅读
    <b class='flag-5'>ELF</b> <b class='flag-5'>1</b><b class='flag-5'>技术</b><b class='flag-5'>贴</b>|如何将Python3.6.9<b class='flag-5'>移植</b><b class='flag-5'>到</b><b class='flag-5'>开发板</b><b class='flag-5'>上</b>

    ELF技术|如何在开发板实现对Java的支持

    功部署和运行Java环境。1.拷贝两个压缩包ELF1开发板的/home/root路径下解压。网盘链接:https://pan.baidu.com/s/
    的头像 发表于 03-13 16:47 484次阅读
    <b class='flag-5'>ELF</b><b class='flag-5'>技术</b><b class='flag-5'>贴</b>|如何在<b class='flag-5'>开发板</b><b class='flag-5'>上</b>实现对Java的支持

    ElfBoard技术|在NXP源码基础适配ELF 1开发板的按键功能

    本次源码适配工作是在NXPi.MX6ULLEVK评估的Linux内核源码(特定版本:Linux-imx_4.1.15)基础上进行的。主要目标是调整功能接口引脚配置,以适应ELF1开发板。接下来
    的头像 发表于 07-10 09:54 559次阅读
    ElfBoard<b class='flag-5'>技术</b><b class='flag-5'>贴</b>|在NXP源码基础<b class='flag-5'>上</b>适配<b class='flag-5'>ELF</b> <b class='flag-5'>1</b><b class='flag-5'>开发板</b>的按键功能

    ElfBoard技术|如何在ELF 1开发板搭建流媒体服务器

    流媒体服务器是一种专门用于传输实时数据流的服务器软件,广泛用于视频直播、视频会议、音频播放等应用场景。在嵌入式开发领域,将流媒体服务器部署开发板可以实现诸如视频监控、实时数据传输等
    的头像 发表于 08-20 14:48 539次阅读
    ElfBoard<b class='flag-5'>技术</b><b class='flag-5'>贴</b>|如何在<b class='flag-5'>ELF</b> <b class='flag-5'>1</b><b class='flag-5'>开发板</b><b class='flag-5'>上</b>搭建流媒体服务器