zoukankan      html  css  js  c++  java
  • 在x86为arm 编译 httpd 2.2.31

    这个版本的httpd 已经自带 apr apr-util pcre , 不用额外下载源代码

    1) 编写环境变量脚本,并执行

    cross-env.sh :

    export ARMROOTFS=/h1root
    export CPP="/usr/bin/arm-linux-gnueabi-cpp-4.4"
    export CC="/usr/bin/arm-linux-gnueabi-gcc-4.4"
    export CXX="/usr/bin/arm-linux-gnueabi-g++-4.4"
    export LD="/usr/bin/arm-linux-gnueabi-ld"
    export AR="/usr/bin/arm-linux-gnueabi-ar"
    export AS="/usr/bin/arm-linux-gnueabi-as"
    export RANLIB="/usr/bin/arm-linux-gnueabi-ranlib"

    2) 修改configure

    进入./srclib/apr目录,修改configure文件,搜索cannot run test program while cross compiling

    3) 执行configure(这些参数都是别人的汗水换来的,请珍惜!)

    ./configure --prefix=$ARMROOTFS/usr/apache --host=arm-linux  --with-included-apr ac_cv_file__dev_zero=yes ac_cv_func_setpgrp_void=yes apr_cv_tcp_nodelay_with_cork=yes ap_cv_void_ptr_lt_long=no ac_cv_struct_rlimit=yes

    4)由于交叉编译出来的工具不能在host机运行, 所以make 失败之后,需要编译几个本地工具

    cd ./srclib/apr/tools/
    gcc -Wall -O2 -DCROSS_COMPILE gen_test_char.c -s -o gen_test_char
    ./gen_test_char > ../include/private/apr_escape_test_char.h
    ./srclib/pcre/
    gcc -Wall -O2 -DCROSS_COMPILE dftables.c -s -o dftables
    cd ./server
    gcc -Wall -O2 -DCROSS_COMPILE gen_test_char.c -s -o gen_test_char

    5) 还需要改几个文件

    修改./srclib/apr/下的Makefile文件,注释掉图示两行

    修改./srclib/apr/include/apr_want.h,注释掉struct iovec的定义

    非常好的参考资料:

    http://www.cnblogs.com/tanghuimin0713/p/3749817.html

    http://www.cnblogs.com/zhangsf/p/3272960.html

    http://www.programering.com/a/MDNwYjNwATk.html

  • 相关阅读:
    localStorage用法
    es6写法
    div滚动条
    搜索框聚焦和失焦
    初步理解前端模块化开发
    clam安装
    div行高不确定,文字和图片居中
    html页面设置<span>的高度和宽度
    一款好用的wangEditor编辑器
    3月23 防360网页的示意图
  • 原文地址:https://www.cnblogs.com/johnsonshu/p/4756324.html
Copyright © 2011-2022 走看看