phpize建立php扩展 Cannot find config.m4

phpize建立php扩展Cannot find config.m4

[root@ns root]# phpize

  Cannot find config.m4.

  Make sure that you run /usr/local/bin/phpize in the top level source directory of the module


在/usr/local/src/php-4.3.5/ext下找到这个工具

  来建立一个php扩展的一个框架

  [root@ns ext]#cd /usr/local/src/php-4.3.5/ext/

  [root@ns ext]# ./ext_skel --extname=sdomain

To use your new extension, you will have to execute the following steps:

  1. $ cd ..

  2. $ vi ext/sdomain/config.m4

  3. $ ./buildconf

  4. $ ./configure --[with|enable]-sdomain

  5. $ make

  6. $ ./php -f ext/sdomain/sdomain.php

  7. $ vi ext/sdomain/sdomain.c

  8. $ make

[root@ns ext]# cd sdomain/

  [root@ns sdomain]# ls

  config.m4 EXPERIMENTAL     sdomain.php  tests

  CREDITS  sdomain.c php_sdomain.h

  然后我们要修改文件顺序是

  configue.m4

  sdomain.c

  php_sdomain.h

使用文本编辑器打开config.m4文件,修改文件内容:

dnl PHP_ARG_WITH(my_module, for my_module support,

  dnl Make sure that the comment is aligned:

  dnl [ --with-my_module       Include my_module support])

修改成

  PHP_ARG_WITH(my_module, for my_module support,

  [ --with-my_module       Include my_module support])

  或者将

dnl PHP_ARG_ENABLE(my_module, whether to enable my_module support,

  dnl Make sure that the comment is aligned:

  dnl [ --enable-my_module      Enable my_module support])

修改成

  PHP_ARG_ENABLE(my_module, whether to enable my_module support,

  [ --enable-my_module      Enable my_module support])

        (其实就是将这部分的dnl去掉,在这个文件里dnl就是注释的意思,相当于我们PHP里面的#或// 另外把他中间的一句描术也去掉)

然后保存退出

  然后在编辑

  Vi my_module.c

  将文件其中的下列代码进行修改

/* Every user visible function must have an entry in my_module_functions[].
*/
function_entry my_module_functions[] = {
    PHP_FE(say_hello,    NULL) /* ?添加着一行代码 */
    PHP_FE(confirm_my_module_compiled,   NULL) /* For testing, remove later. */
    {NULL, NULL, NULL}   /* Must be the last line in my_module_functions[] */
};

  在文件的最后添加下列代码

PHP_FUNCTION(say_hello)
{
    zend_printf("hello sdomain!");
}

 

再修改:php_sdomain.h

vi php_sdomain.h

在PHP_FUNCTION(confirm_my_module_compiled); /* For testing, remove later. */ 这行的下面添加一行:

PHP_FUNCTION(say_hello); /* For testing, remove later. */

  保存文件退出

  然后我们就可以在这个目录下使用上面的命令了

  /usr/local/php/bin/phpize


你可能感兴趣的:(建站)