boa+php+ 嵌入式移植

BOA+PHP在s3c6410上的移植

环境:

       开发板:s3c6410 2.6内核

       宿主机: Ubuntu 12.0

       交叉编译器: arm-none-linux-gnueabi-gcc

1、   php-5.5.15.tar.gz解压到/home/lxp/smart-home/php

2、   编译

 ./configure CC=arm-none-linux-gnueabi-gcc  --host=arm-linux --prefix=/mnt/yaffs/php5 --disable-all  --enable-pdo --enable-shmop --with-sqlite3 --with-sqlite --with-pdo-sqlite --with-zlib --without-iconv
注:--enable-shmop需要加上,需要共享内存操作支持

 

3、    make

   make的时候出现:undefinedreference to dlopenundefined reference to dlclose,解决方法:在makefileEXTRA_LIBS之后加上-ldl

4、      make install

5、将源码的php.ini-development改名php.ini放到/mnt/yaffs/php5的子目录lib里面。

完成。

 参考如下:

 




P HP用的是5.2.17没有用最新的,最新的编译有点问题,用的前一个稳定版本。

1、下载php-5.2.17.tar.bz2

2、解压到/vptemp

#tar -jxv -f php-5.2.17.tar.bz2 -C /vptemp

3、编译

# cd /vptemp/php-5.2.17

#CC=arm-linux-gcc ./configure --host=arm-linux --prefix=/opt/php5 --disable-all --enable-pdo --with-sqlite3 --with-sqlite --with-pdo-sqlite --with-zlib --without-iconv --with-shmop
注意:zlib需要安装库 
#make
make的时候出现:undefined reference to dlopen、undefined reference to dlclose,解决方法:在makefile中EXTRA_LIBS之后加上-ldl
4、安装
#make install

将PHP源码包中php.ini-dist (新的版本是php.ini-development)文件复制到/opt/php5/lib下并改名为php.ini,因为指定了prefix,PHP缺省会去/opt/php5/lib下找php.ini

5 、下载到Tiny6410

#cd /opt

#tar -jcv -f php5-e.tar.bz2 php5

将/opt/php5-e.tar.bz2文件件拷贝到arm板上的/opt目录下,解压:

#tar -jxv -f php5-e.tar.bz2 -C /opt

6 、配置BOA

要让BOA能够通过CGI执行PHP,修改/etc/boa/boa.conf,修改

CGIPath为:CGIPath /bin:/opt/php5/bin

最后添加一行:

AddType application/x-httpd-cgi php

7、测试

在/www建立test.php

#!/opt/php5/bin/php
<?php
echo "X-Powered-By: PHP/5.2.17\n";
echo "Content-type: text/html\n\n";
?>
<html>
<body>
H ello!
<?php
echo $_SERVER["QUERY_STRING"];
?>

</body>
</html>

在浏览器中可以打开!



注意:

按上述弄好以后,在命令行下执行php-cgi完全正常,但写成脚本就是不行,最后发现只能用php,即脚本最前面一行必须是:

#!/opt/php5/bin/php

而不能是

#!/opt/php5/bin/php-cgi

那么每个文件最前面必须用下面几行返回必须的文件头了:

<?php
echo "X-Powered-By: PHP/5.2.17\n";
echo "Content-type: text/html\n\n";
?>

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值