移植php5到arm linux遇到的问题


主要的问题是,我这里需要给php写动态扩展库,而当我移植完之后,phpinfo显示:

  引用

  standard

  Dynamic Library support not available

  这样的话,我写的动态链接库就无法加载。。

  这里的原因是当configure的时候他好像没有找到dlopen,因此这里我们需要configure完后强制他使用dlopen.

  首先修改php的Makefile.在开始出添加LDFLAGS += -ldl ,这里是为了链接dlopen库。

  然后修改main/php.h 在开始处添加#define HAVE_LIBDL 1 ,这个宏是为了交叉编译时强制使用dlopen。

  紧接着修改ext/standard/dl.c ,这段代码中添加#include <dlfcn.h> ,这个是dlopen的头文件。

#if defined(HAVE_LIBDL) || HAVE_MACH_O_DYLD_H 
 
#include <stdlib.h> 
 
#include <stdio.h> 
 
#include <dlfcn.h>

  然后make & make install.这样就可以正常加载外部动态扩展库了


« 
» 
快速导航

Copyright © 2016 phpStudy | 豫ICP备2021030365号-3