分享

php5在arm

 汉江秋月夜 2012-06-16
php5在arm-linux下的交叉编译
2010-06-12 10:26
编译前的准备工作:需下载的源码:
Libxml2-2.6.26.tar.gz Zlib-1.2.3.tar.bz2 (http://www./)
php-5.3.3.tar.gz 编译步骤如下:
1. 首先交叉编译zlib。解压Zlib-1.2.3.tar.bz2 cd Zlib-1.2.3 CC=arm-linux-gcc ./configure --sahred --prefix=/usr/local/arm/3.4.1/arm-linux make&&make install (一开始我把zlib装在独立的目录下,编译php时在用上--with-zlib选项还是报错,后来直接安装到我交叉编译器目录/usr/local /arm/3.4.1/arm-linux下就不报错了。)
2. 接着交叉编译libxml2。解压Libxml2-2.6.26.tar.gz cd Libxml2-2.6.26 CC=arm-linux-gcc ./configure --host=arm-linux --prefix=/usr/local/arm/3.4.1/arm-linux make&&make install (安装到/usr/local/arm/3.4.1/arm-linux下的原因同上)
3. 交叉编译php-5.3.3。解压 php-5.3.3.tar.gz cd php-5.3.3
(1) CC=arm-linux-gcc ./configure --host=arm-linux --prefix=/usr/local/php-arm --disable-all --enable-pdo --with-sqlite --with-zlib --without-iconv (用--with-apxs2选项会报错,所以选择了编译成cgi模式)
(2) make&&make install
(3) 将PHP源码包中php-5.3.3.ini-development文件复制到/usr/local/php-arm/lib下并改名为php.ini。
(4) 用arm-linux-strip把bin目录下的php和php-cgi进行strip。
(5) 将php-arm文件件拷贝到arm板上的/usr/local目录下。
(6) 最后修改arm板上apache的配置文件httpd.conf。
添加如下语句:
DirectoryIndex index.php
DirectoryIndex index.php3
DirectoryIndex index.phtml
ScriptAlias /php5/ "/usr/local/php-arm/bin/" # 注意 "/usr/local/php-arm/bin/" 中最后一个"/"不可少
AllowOverride None
Options None
Order allow,deny

Allow from all 

AddType  application/x-httpd-php .php3

AddType application/x-httpd-php .php
AddType application/x-httpd-php .phtml
Action application/x-httpd-php "/php5/php-cgi"
 大功告成!在arm上写一个phpinfo测试页面。在浏览器里输入:http://192.168.2.168(本机IP):8080/test.php(我设置的监听端口为8080),可以看到php相关信息。
(一开始我把pdo、sqlite编译成动态模块,可是在phpinfo下始终看不到pdo、sqlite信息,查看错误日志说是无法加载动态库,动态加载不支持,不知道怎么改,索性将其编译成静态的,一切就ok了)

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多