ARM技术论坛
直播中

电鱼科技

5年用户 45经验值
擅长:嵌入式技术
私信 关注
[经验]

基于am335的boa移植____________电鱼电子

boa制作:
1.准备开发环境:
  1)VMware 10.0
  2)Ubuntu 14.04 64bit
  3)Sail335开发板
  4)交叉编译器:gcc-linaro-arm-linux-gnueabihf-4.9-2014.09_linux
2.源码:
  1)Boa源码:boa-0.94.13.tar.gz
  2)Boa测试页面:index.html
3.移植过程:
  1)移植Boa
          ①解压缩  
              #tar zxvf boa-0.94.13.tar.gz
          ②进入boa-0.94.13目录
               #cd boa-0.94.13
          ③进入src目录,在src目录下运行./configure
          ④生成Makefile修改Makefile的编译器选项
              #gedit Makefile
              CC = gcc    改成    CC = arm-linux-gnueabihf-gcc
              CPP = gcc -E   改成   CPP = arm-linux-gnueabihf-gcc -E
          ⑤添加交叉编译器临时环境变量
          #export PATH=/usr/local/arm/gcc-linaro-arm-linux-gnueabihf-4.9-2014.09_linux/bin/:$PATH
          ⑥修改文件 src/boa.c,将boa.c文件中以下几行判断去掉即可。
          if ( setuid ( 0 ) != - 1 ) {      
            DIE ( "icky Linux kernel bug!" );
          }
          ⑦ 修改文件src/compat.h
          #define tiMEZONE_OFFSET(foo) foo##->tm_gmtoff   
          改成   
          #define TIMEZONE_OFFSET(foo) foo->tm_gmtoff
          ⑧src 文件夹下的config.c 里的 if(!server_name){..........}
         (大概在266 行到     286 行之间)注释掉
          ⑨修改src/log.c   注释掉
           if (dup2(error_log, STDERR_FILENO) == -1) {
                  DIE("unable to dup2 the   error log");
           }
           ⑨编译代码
              #make
4.运行环境搭建
  1)在开发板中创建以下目录
          /etc/boa    /var/logs    /var/logs/boa    /var/www    /var/www/cgi-bin
          #mkdir -p /etc/boa
          #mkdir -p /var/logs
          #mkdir -p /var/logs/boa
          #mkdir -p /var/www
          #mkdir -p /var/www/cgi-bin
  2)拷贝、修改文件
          拷贝boa-0.94.13/boa 和 boa-0.94.13/boa_indexer 到 /usr/bin。
          拷贝Ubuntu12.04的/etc/mime.type 到 开发板 /etc
          拷贝boa-0.94.13/boa.conf 到 /etc/boa
          修改/etc/boa/boa.conf
              #ServerName www.your.org.here  改为 ServerName www.dianyu.org
              ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/ 改为 ScriptAlias /cgi-bin/ /var/www/cgi-bin/
              AccessLog /var/log/boa/access_log 改为 AccessLog /var/logs/boa/access_log
             ErrorLog /var/log/boa/error_log 改为  ErrorLog /var/logs/boa/error_log
          拷贝 index.html 到 /var/www
5.测试与运行
          连接好PC与开发板网卡0(eth0)的网络连接
          将开发板eth0网卡设置ip为192.168.1.123
          #ifconfig eth0 192.168.1.123 up
          测试开发板网卡0与PC的网络连接
          #ping PC的IP地址
          运行Boa
          #boa&
          PC上打开浏览器,在浏览器中输入192.168.1.123,查看boa显示的index.html(这个文件名称和boa.conf文件中的DirectoryIndex index.html中的index.html要一样)

回帖(1)

dmx0829

2019-11-1 10:02:07
谢谢分享 学习学习
举报

更多回帖

发帖
×
20
完善资料,
赚取积分