[PHP-users 4846] Re: [Q]PHP4.0.6+Namazu の make 時にエラー
Youichi Iwakiri
php-users@php.gr.jp
Sat, 19 Jan 2002 00:15:42 +0900
いわきりです
水迫清仁 wrote in <20020118212759.8BD8.MIZUSAKO@southwave.co.jp>:
>インストール手順としては、
>$tar -zxvf php-4.0.6.tar.gz
>$cp php4_namazu-2.1.0.tar.gz php-4.0.6/ext/
この組み合わせが悪いです。
>Namazuのモジュール内にあった「README.ja」で説明されていた、
このREADME.jaの中に
| ・履歴
| 2000.12.24 Version 2.1.0
| - PHP-4.1.0 に対応、以前のバージョンでは動きません。
と書いてあります。
Masashi Ohba wrote in <200201181342.AA01650@nt.priv.netforce.ne.jp>:
>>PHP4.0.6以前のものだったら、php4_namazu-2.0.1じゃなくて?
>ですが、PHP4.0.6+php4_namazu-2.0.1の場合でも
>make時にエラーが出るようなことは
>[PHP-users 885]
>[PHP-users 890]
>[PHP-users 892]
>[PHP-users 898]
>[PHP-users 899]
>でやり取りされてます。
>#これが改善されたのかどうかは知らないです
4.0.5と4.0.6の間だったと思いますが、autoconf辺りの
マクロ定義が変更になっていたと思います。
conig.m4をちょっと直すとmakeは通ります。
php-4.1.0以降 + php4_namazu-2.1.0.tar.gzの利用をお勧めしますが
以下にパッチを付けておきます。
当然無保証ですので、利用は各自の判断でお願いします。
php4_namazu-2.0.1.tar.gz用
-ここから--------------------
--- config.m4 Tue May 9 00:33:14 2000
+++ namazu_patch/config.m4 Fri Nov 30 06:34:41 2001
@@ -18,7 +18,8 @@
AC_DEFINE(HAVE_NAMAZU,1,[ ])
- AC_ADD_LIBRARY_WITH_PATH(nmz, $NAMAZU_LIBDIR,
NAMAZU_SHARED_LIBADD)
+ PHP_ADD_LIBRARY_WITH_PATH(nmz, $NAMAZU_LIBDIR,
NAMAZU_SHARED_LIBADD)
+ PHP_ADD_LIBRARY_WITH_PATH(intl, $NAMAZU_LIBDIR,
NAMAZU_SHARED_LIBADD)
PHP_EXTENSION(namazu,$ext_shared)
fi
-ここまで--------------------
php4_namazu-2.1.0.tar.gz用
-ここから--------------------
diff -u namazu.orig/php_namazu.c namazu/php_namazu.c
--- namazu.orig/php_namazu.c Mon Dec 3 22:50:38 2001
+++ namazu/php_namazu.c Fri Jan 18 23:44:20 2002
@@ -74,15 +74,19 @@
zend_module_entry namazu_module_entry = {
+#if ZEND_MODULE_API_NO >= 20010901
STANDARD_MODULE_HEADER,
+#endif
"namazu",
namazu_functions,
- PHP_MODULE_STARTUP_N(namazu),
- PHP_MODULE_SHUTDOWN_N(namazu),
- PHP_MODULE_ACTIVATE_N(namazu),
- PHP_MODULE_DEACTIVATE_N(namazu),
- PHP_MODULE_INFO_N(namazu),
+ PHP_MINIT(namazu),
+ PHP_MSHUTDOWN(namazu),
+ PHP_RINIT(namazu),
+ PHP_RSHUTDOWN(namazu),
+ PHP_MINFO(namazu),
+#if ZEND_MODULE_API_NO >= 20010901
NO_VERSION_YET,
+#endif
STANDARD_MODULE_PROPERTIES
};
@@ -97,10 +101,8 @@
/* hlist destructor */
static void
-php_namazu_free_hlist(zend_rsrc_list_entry *rsrc TSRMLS_DC)
+php_namazu_free_hlist(php_nmzresult_t *result)
{
- php_nmzresult_t *result = (php_nmzresult_t *)rsrc->ptr;
-
nmz_free_hlist(result->hlist);
efree(result);
}
@@ -164,20 +166,20 @@
}
-PHP_MODULE_STARTUP_D(namazu)
+PHP_MINIT_FUNCTION(namazu)
{
#ifdef ZTS
php_namazu_lock_id = tsrm_mutex_alloc();
#endif
ZEND_INIT_MODULE_GLOBALS(namazu, php_namazu_init_globals, NULL);
REGISTER_INI_ENTRIES();
- le_nmzres = zend_register_list_destructors_ex(php_namazu_free_hlist, NULL, "Namazu result", module_number);
+ le_nmzres = register_list_destructors(php_namazu_free_hlist, NULL);
return SUCCESS;
}
-PHP_MODULE_SHUTDOWN_D(namazu)
+PHP_MSHUTDOWN_FUNCTION(namazu)
{
UNREGISTER_INI_ENTRIES();
#ifdef ZTS
@@ -189,7 +191,7 @@
}
-PHP_MODULE_ACTIVATE_D(namazu)
+PHP_RINIT_FUNCTION(namazu)
{
NMZG(idxcount) = 0;
#ifndef ZTS
@@ -210,7 +212,7 @@
}
-PHP_MODULE_DEACTIVATE_D(namazu)
+PHP_RSHUTDOWN_FUNCTION(namazu)
{
if (NMZG(status) & PHP_NAMAZU_STATUS_OPEN) {
nmz_free_internal();
@@ -222,7 +224,7 @@
}
-PHP_MODULE_INFO_D(namazu)
+PHP_MINFO_FUNCTION(namazu)
{
DISPLAY_INI_ENTRIES();
}
diff -u namazu.orig/php_namazu.h namazu/php_namazu.h
--- namazu.orig/php_namazu.h Mon Dec 3 21:29:06 2001
+++ namazu/php_namazu.h Fri Jan 18 23:10:47 2002
@@ -17,12 +17,11 @@
#define PHP_NAMAZU_STATUS_OPEN 0x01
#define PHP_NAMAZU_STATUS_SEARCH 0x10
-
-PHP_MODULE_STARTUP_D(namazu);
-PHP_MODULE_SHUTDOWN_D(namazu);
-PHP_MODULE_ACTIVATE_D(namazu);
-PHP_MODULE_DEACTIVATE_D(namazu);
-PHP_MODULE_INFO_D(namazu);
+PHP_MINIT_FUNCTION(namazu);
+PHP_MSHUTDOWN_FUNCTION(namazu);
+PHP_RINIT_FUNCTION(namazu);
+PHP_RSHUTDOWN_FUNCTION(namazu);
+PHP_MINFO_FUNCTION(namazu);
/* php function registration */
PHP_FUNCTION(nmz_set_sortorder);
-ここまで--------------------