操作環(huán)境: 編譯器:arm-2014.05編譯器 文件系統(tǒng):使用的busybox移植Qt5.7的文件系統(tǒng)。 硬件平臺(tái):IMX6ULL
本章用iTOP-IMX6ULL開(kāi)發(fā)板搭建一個(gè)web服務(wù)器。需要用到boa,boa是一個(gè)小型的web服務(wù)器,可執(zhí)行代碼只有約60KB,可以用于多種平臺(tái),它是一個(gè)單任務(wù)web服務(wù)器,只能依次完成用戶(hù)的請(qǐng)求,在嵌入式中比較常見(jiàn)。boa的官方網(wǎng)站為www.boa.org,可以在上面下載最新版本的boa,這里使用的是boa-0.94.13.tar.gz。下載解壓后如圖1:
進(jìn)入解壓后的boa-0.94.13文件夾,進(jìn)入目錄src,運(yùn)行./configure生成Makefile編譯文件,成功后如圖2:
修改Makefile,找到“CC = gcc”這一行,將這一行修改成“CC = arm-none-linux-gnueabi-gcc -static”,找到”CPP = gcc -E“這一行,修改成“CPP = arm-none-linux-gnueabi-gcc -E -static”,修改完成后如圖3:
完成后執(zhí)行make編譯,過(guò)程中可能會(huì)報(bào)缺少依賴(lài)庫(kù),百度查找即可解決,如果出現(xiàn)下面的錯(cuò)誤要修改compat.h,如圖4所示:
解決辦法,使用vi命令打開(kāi)當(dāng)前目錄下的compat.h,然后找到“#define TIMEZONE_OFFSET(foo) foo##->tm_gmtoff”這一行,修改為如圖 5所示:
然后保存并退出compat.h,輸入make,繼續(xù)編譯boa,如圖6:
接下來(lái)使用arm-none-linux-gnueabi-strip boa命令為bos文件瘦身,如圖7:
通過(guò)上面的圖片看到boa文件比之前變小了,至此boa的編譯就完成了,下面需要把boa文件拷貝到文件系統(tǒng)里面。 拷貝編譯最終生成的boa到共享文件夾。 虛擬機(jī)Ubuntu的/etc目錄下的mime.types文件到共享文件夾。 boa-0.94.13目錄下面有個(gè)默認(rèn)的boa.conf文件,把它也拷貝到共享文件夾。
在/etc/目錄下創(chuàng)建boa文件夾,將boa.conf拷貝到板子的etc/boa目錄下;
mime.types拷貝到開(kāi)發(fā)板e(cuò)tc目錄下;
boa拷貝到開(kāi)發(fā)板的bin目錄下
接下來(lái)在開(kāi)發(fā)板根目錄下建立www文件夾,如圖12:
然后在開(kāi)發(fā)板上面建立的www目錄下面建立文件夾cgi-bin目錄,如圖13:
然后在開(kāi)發(fā)的etc目錄下用命令touch group命令建立group文件,如圖14:
然后進(jìn)到開(kāi)發(fā)板e(cuò)tc/boa目錄,使用vi boa.conf命令打開(kāi)boa.conf文件,如圖15所示。 打開(kāi)boa.conf文件,找到”Group nogroup”,修改為”Group 0”。
找到“ErrorLog ”和“AccessLog”這兩行,指定log文件的路徑,文件就會(huì)自動(dòng)在此路徑創(chuàng)建,修改成如圖16:
然后找到“#ServerName www.your.org.here”這一行,修改為“ServerName www.your.org.here“如圖17所示:
然后找到“DocumentRoot /var/www”這一行,修改 為“DocumentRoot /www”(注意:這里的“/www”就是前面步驟使用mkdir創(chuàng)建的www目錄),如圖 18所示:
然后找到“ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/”這一行,修改為“ScriptAlias /cgi-bin/ /www/cgi-bin/”,如圖 19所示:
boa.conf修改結(jié)束。 進(jìn)入到前面創(chuàng)建的 www 目錄,然后使用 vi index.html 命令建立 index.html 文件,在里面輸入下面的代碼:(注意:web 頁(yè)面不要包含漢字)
代碼如圖 20所示: 然后保存并退出 index.html,至此基于 boa 的 web 服務(wù)器就搭建完成了,上面創(chuàng)建的index.html 是一個(gè)簡(jiǎn)單的網(wǎng)頁(yè),用于測(cè)試。現(xiàn)在啟動(dòng)開(kāi)發(fā)板,開(kāi)發(fā)板起來(lái)以后直接 輸入 ps - e | grep “boa” 命令,可以看到 boa 程序在運(yùn)行,如圖21:
在Ubuntu的瀏覽器輸入開(kāi)發(fā)板的IP地址可以看到我們放入的index.html網(wǎng)頁(yè):
到此boa服務(wù)器移植成功。
迅為i.MX6ULL終結(jié)者開(kāi)發(fā)板使用手冊(cè)內(nèi)容提綱:
|