Boa作為一款專為嵌入式系統(tǒng)打造的輕量級(jí)Web服務(wù)器,其核心優(yōu)勢(shì)在于能夠在嚴(yán)苛的硬件條件下穩(wěn)定運(yùn)行,Boa出色的可定制性和擴(kuò)展?jié)撃苓m用于多種應(yīng)用情境。當(dāng)面對(duì)嵌入式裝置或其他計(jì)算資源有限的平臺(tái)時(shí),部署B(yǎng)oa作為Web服務(wù)解決方案顯得尤為適宜。
接下來,將跟各位小伙伴詳細(xì)介紹一下基于ELF 1開發(fā)板移植Boa的方法。
1、Boa官網(wǎng)下載源碼
官網(wǎng)網(wǎng)址:Boa download | SourceForge.net下載好的Boa源碼為:boa-0.94.13.tar.gz
2、將源碼拷貝到虛擬機(jī)并解壓
elf@ubuntu:~/work/a/boa$ tar xvf boa-0.94.13.tar.gz
3、進(jìn)行交叉編譯
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
這時(shí)會(huì)出現(xiàn)報(bào)錯(cuò),如下圖顯示:
修改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
修改完成,保存退出,繼續(xù)make,之后就不會(huì)報(bào)錯(cuò)了。
至此交叉編譯Boa已經(jīng)完成,接下來在開發(fā)板上進(jìn)行測(cè)試。
1、開發(fā)板中建立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、將可執(zhí)行應(yīng)用和一些配置文件通過Scp命令拷貝到開發(fā)板中
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/下創(chuàng)建index.html
root@ELF1:/etc# vi /www/index.html
并編寫加入以下內(nèi)容:
<2;title>Isaigu_gateway<2;/title>
Hello ElfBoard | |
5、在開發(fā)板執(zhí)行應(yīng)用
root@ELF1:~# /etc/boa/boa
6、在瀏覽器輸入開發(fā)板IP,效果如下
至此Boa的移植就完成了,希望各位小伙伴不僅能掌握這項(xiàng)技能,還能享受在嵌入式技術(shù)海洋中不斷探索的樂趣,并期待你們?cè)诮酉聛淼膶W(xué)習(xí)道路上越走越遠(yuǎn),能夠在嵌入式技術(shù)領(lǐng)域獨(dú)當(dāng)一面!
-
嵌入式
+關(guān)注
關(guān)注
5082文章
19104瀏覽量
304804 -
嵌入式系統(tǒng)
+關(guān)注
關(guān)注
41文章
3587瀏覽量
129435 -
開發(fā)板
+關(guān)注
關(guān)注
25文章
5032瀏覽量
97371
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論