1. 首先, linux在开发板上能跑起来了.

包括网络驱动也有了, ifconfig之后, 能看到在rcS里面设置的IP, 也能ping通windows主机了, 当然, 也要window关掉防火墙才行.

2. 在windows上起一个tftp, 后来发现这样是不行的, 因为每个包都要反复打包, 有点累, 还是用虚拟机开nfs比较靠谱, 但是我虚拟机不靠谱, 老是不走有线网卡, 主动跑去无线去了.

3. busybo的tftp命令有点屌, 格式是:

tftp -g -l localFileName -r remoteFileName x.x.x.x

4. 然后下载boa, 修改boa.c文件

注释掉下面这段代码:

   if (passwdbuf == NULL) {
   DIE(”getpwuid”);
   }
   if(initgroups(passwdbuf->pw_name, passwdbuf->pw_gid) == -1) {
  DIE(”initgroups”);
  } //注释掉, 用#if 0 #endif

5. 在example的文件夹找到boa.conf配置文件, 略加修改

a. 将ServerName字段注释掉, 避免一个servername get不到的错误.

b. 将User/UserGroup 都改成0

c. 找到文档的根目录, 比如/var/www, 日志目录, 记下来

6. 在开发板上建立/var/log/boa 目录用来放错误日志之类, 然后建立/var/www来存放网站根目录

7. 回到ubuntu, 对boa的编译环境做个修改, 让他用交叉编译

src/Makefile
CC = arm-linux-gcc
CPP = arm-linux-gcc -E

先用.configure, 然后make

辨已完成之后, 直接把src文件夹打包

tar cvf src.tar src/

不要压缩, 压缩的话, 在开发板上的busybox打不开, 或者是我没找到到方法把..总之直接打包.

8. 最后用tftp把这个tar放到/var/boa/下面, 再把boa.conf文件也拷贝到/var/boa/下面, 然后直接运行src/boa就可以去错误日志的地方看看哪里有没有什么问题了. 没问题的日志是:

[01/Jan/1970:01:29:20 +0000] caught SIGTERM, starting shutdown
[01/Jan/1970:01:29:20 +0000] exiting Boa normally (uptime 99 seconds)
[01/Jan/1970:00:02:03 +0000] boa: server version Boa/0.94.14rc21
[01/Jan/1970:00:02:03 +0000] boa: server built Jan  9 2017 at 18:01:02.
[01/Jan/1970:00:02:03 +0000] boa: starting server pid=780, port 80

这样的.

没问题的话, 试试建一个index.html的文件在www根目录下面, windows能访问, 表示boa成功移植了.

PS, 增加一个mime.types文件, 直接把这个文件从ubuntu上面tftp到开发板就行了. 在etc下面.

参考文档:

http://blog.csdn.net/xdw1985829/article/details/6672742

arm linux上的第一个应用程序 BOA移植的更多相关文章

  1. Linux上设置开机启动Java程序

    在Linux上设置开机启动Java程序,例如:test.jar 在Linux上启动Java程序的命令: nohup java -jar test.jar >/dev/>& & ...

  2. 在 Linux 上找出并解决程序错误的主要方法【转】

    转自:https://www.ibm.com/developerworks/cn/linux/sdk/l-debug/index.html 本文讨论了四种调试 Linux 程序的情况.在第 1 种情况 ...

  3. 提高 Linux 上 socket 性能 加速网络应用程序的 4 种方法

    使用 Sockets API,我们可以开发客户机和服务器应用程序,它们可以在本地网络上进行通信,也可以通过 Internet 在全球范围内进行通信.与其他 API 一样,您可以通过一些方法使用 Soc ...

  4. Boa服务器在ARM+Linux上的移植

    下面给大家介绍一下Boa服务器移植的具体操作步骤,希望能够有帮助. 环境        主机:ubuntu8.10        交叉工具链:gcc-3.4.5-glibc-2.3.6         ...

  5. 在SAP云平台ABAP编程环境上编写第一段ABAP程序

    距2017年秋季的SAP TechEd大会上一位大佬Björn Goerke,SAP's Chief Technology Officer宣布了SAP Cloud Platform即将支持ABAP至今 ...

  6. 在64位的linux上运行32位的程序

    1.症状 (1)执行bin文件时提示:No such file or directory (2)ldd bin文件  的输出为: not a dynamic executable (3)file bi ...

  7. linux上chrome、vlc等程序root不能运行的解决办法

    which vlc 或者 whereis vlc 输入/geteuid,输入i进入输入模式,将geteuid改成getppid,然后ESC,输入wq,保存退出,这样程序root用户就可以运行了. ch ...

  8. 直播 linux上的第一个c++程序

    这里用crt来直播吧: 登录到服务器上之后: 1.mkdir -p 建一个文件夹 2.ll 查看一下这个文件夹 3.cd 进入这个文件夹 4.vim 进行文本编辑 写完之后,按下esc中止输入模式,用 ...

  9. 009-2010网络最热的 嵌入式学习|ARM|Linux|wince|ucos|经典资料与实例分析

    前段时间做了一个关于ARM9 2440资料的汇总帖,很高兴看到21ic和CSDN等论坛朋友们的支持和鼓励.当年学单片机的时候datasheet和学习资料基本都是在论坛上找到的,也遇到很多好心的高手朋友 ...

随机推荐

  1. yui--datatable 更新table数据

    使用render可以重新渲染datatable,之前添加的样式等信息也想相应会初始化,另外行定位等也会失效 使用updateRows方法不会删除样式等信息 更新datasource中_oData数据 ...

  2. 计算机语言的发展(the history of computer's language)

    第一部分 计算机语言的分类: 机器语言:直接用二进制代码指令表达的计算机语言,指令是用0和1组成的一串代码.例如:1011011000000000,表示加法.可以直接执行. 汇编语言:汇编指令集.伪指 ...

  3. SOFTWARE_INTRODUCE_02

    几款网页数据抓取软件 近年来,随着国内大数据战略越来越清晰,数据抓取和信息采集系列产品迎来了巨大的发展机遇,采集产品数量也出现迅猛增长.然而与产品种类快速增长相反的是,信息采集技术相对薄弱.市场竞争激 ...

  4. appcan里面模板的使用

    1:首先要定义一个字符串如果太长需要换行,可以用"\"来分割每行 2:模板里面使用的是ejs语法,所以可以使用if else语句等 3:字符串定义好之后要用appcan.view. ...

  5. Python 的数据类型

    列表 #coding=utf-8 students=["小明","小华","小李","小娟","小云" ...

  6. (转)C#读取文件路径

    //获取包含清单的已加载文件的路径或 UNC 位置. public static string sApplicationPath = Assembly.GetExecutingAssembly ( ) ...

  7. requestAnimationFrame 兼容处理

    (function() { ; var vendors = ['ms', 'moz', 'webkit', 'o']; ; x < vendors.length && !wind ...

  8. php进程继续执行

    虽然浏览器提示localhost 的服务器响应时间过长.但是进程在后台继续执行,数据库的条数在增加.

  9. CSS实现垂直居中的常用方法

    在前端开发过程中,盒子居中是常常用到的.其中 ,居中又可以分为水平居中和垂直居中.水平居中是比较容易的,直接设置元素的margin: 0 auto就可以实现.但是垂直居中相对来说是比较复杂一些的.下面 ...

  10. WCF 接收我服务的 HTTP 响应时发生错误

    错误内容: System.ServiceModel.CommunicationException: 接收对 https://xx.com/xx.svc的 HTTP 响应时发生错误.这可能是由于服务终结 ...