基于arm11的php动态扩展库环境的搭建

基于arm11的php动态扩展库环境的搭建

ID:14968707

大小:1.56 MB

页数:17页

时间:2018-07-31

基于arm11的php动态扩展库环境的搭建_第1页
基于arm11的php动态扩展库环境的搭建_第2页
基于arm11的php动态扩展库环境的搭建_第3页
基于arm11的php动态扩展库环境的搭建_第4页
基于arm11的php动态扩展库环境的搭建_第5页
资源描述:

《基于arm11的php动态扩展库环境的搭建》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库

1、基于ARM11的PHP动态扩展库环境的搭建嵌入式开发基于ARM11的PHP动态扩展库环境的搭建文件编号:程序版本:起草人:审核人:批准人:分发号:密级:机密受控状态:受控受控期限:永久起草日期:2011-12-15审核日期:批准日期:分发日期:II基于ARM11的PHP动态扩展库环境的搭建嵌入式开发文档控制记录序号修改状态修改内容修改人完成时间V1.0创建文档2011-12-13II基于ARM11的PHP动态扩展库环境的搭建嵌入式开发目录文档控制记录II1.引言12.搭建步骤及相关说明22.1概述22.2学习文档22.2搭建步骤:23.主要问题71、动态库的三个不同名字及含义72、如何实

2、现:动态库àftpàARM11103、ARM11环境下动态库无法加载13II基于ARM11的PHP动态扩展库环境的搭建嵌入式开发1.引言目的:本文档旨在约束ARM11在嵌入式下的WEB开发过程,主要针对PHP扩展库的撰写,不包括WEB本身的框架设计和搭建。约束:PHP脚本调用PHP扩展库,扩展库封装开发板动态库的方式对象:嵌入式WEB开发的界面设计人员、PHP库接口封装人员、C库封装人员参考文档:《StmAtmV3.0嵌入式WEBPHP扩展库设计(20110727)》--《PHP扩展》–《Liunx开发学习文档》–《arm下php动态库如何加载.html》《php动态库.html》《动态

3、库soname.html》《ftp相关命令.html》14/17基于ARM11的PHP动态扩展库环境的搭建嵌入式开发2.搭建步骤及相关说明2.1概述本次《基于ARM11的动态扩展库环境的搭建》,用了将近一周半的时间才收尾,中途遇到大量的问题,并且有些问题的解决方法出乎常理逻辑,通过一些特殊手段和方法才得以解决,后面会一一列出解决方法和相关注意事项……2.2学习文档此次ARM11动态库环境的搭建需优先参考《StmAtmV3.0嵌入式WEBPHP扩展库设计(20110727)》、《Liunx开发学习文档》其中的动态库制作部分、《PHP扩展》;参照以上几个文档虽可以搭建出一个基本框架,但是在A

4、RM11环境下很多问题便一一暴露,加上网络上资源有限,很多问题都是靠反复验证才得以解决,最终搭建出支持动态库加载的配置环境。2.2搭建步骤:1、所需软件:已搭建好,能够实现网页制作的apache+php、arm-linux-gcc交叉编译环境,具体详见《基于S3c6410的WEB开发环境的搭建》-杨洪。2、搭建具体步骤为:1)制作第三方动态库*.so扩展库.2)制作PHP动态扩展库3、制作第三方动态库*.so扩展库:编写源函数,保存为hellotest.c#include#includeinthello_add(inta,intb){return(a

5、+b);}编写头文件(函数的声明),保存为hellotest.hInthello_add(inta,intb);测试代码test.c#include#include#include“hellotest.h”Intmain(void){intnret=0;14/17基于ARM11的PHP动态扩展库环境的搭建嵌入式开发nret=hello_add(2,5);printf(“hello_add(2,5)=%d”,nret);return0;}交叉编译生成动态链接库*.so;后面会对此做详细介绍,此处不再累赘,注意动态库的三个不同的名字:link_nam

6、e,so_name,real_name。此处采用Makefile的方式,这样编译C程序以及对其修改会方便很多,其中的符号可以查看相关书籍,此处不再做介绍:最后编译完结果会在文件下出现:hellotest.chellotest.hhellotest.olibhellotest.solibhellotest.so.1libhellotest.so.1.0.0其中的箭头符号为所建立的链接!14/17基于ARM11的PHP动态扩展库环境的搭建嵌入式开发相关Makefile:测试动态库,超级用户下,拷贝*.so库函数到板卡的/lib目录下,编写测试代码进行测试,-I库头文件路径,–L库文件路径,–

7、l库的链接[root@yanghonglibhellotest]#cplibhellotest.so.1/lib/[root@yanghonglibhellotest]#cptest/lib/在板卡上运行./test可看到显示结果hello_add(2,5)=7,则证明第三方*.so是无误的。下面是如何将*.so编译进PHP扩展库。14/17基于ARM11的PHP动态扩展库环境的搭建嵌入式开发4、制作PHP扩展库:对这部分内容,对原

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。