Unix。 PECL記憶體教授

Unix。 PECL記憶體教授

我正在嘗試安裝https://github.com/arnaud-lb/php-memory-profiler在 FreeBSD 9.2 上

梨子安裝後http://pecl.php.net/get/memprof-1.0.0.tgz

得到這樣的錯誤:

    In file included from /usr/local/include/php/Zend/zend_compile.h:690,
                 from /usr/local/include/php/Zend/zend_modules.h:26,
                 from /usr/local/include/php/Zend/zend_API.h:26,
                 from /usr/local/include/php/main/php.h:38,
                 from /tmp/pear/memprof/memprof.c:19:
/usr/local/include/php/Zend/zend_vm_opcodes.h:168:7: warning: no newline at end of file
/tmp/pear/memprof/memprof.c:37:3: error: #error "ZTS build not supported (yet)"
/tmp/pear/memprof/memprof.c:114:3: warning: #warning No support for malloc hooks, this build will not track persistent allocations
/tmp/pear/memprof/memprof.c: In function 'memprof_zend_execute_internal':
/tmp/pear/memprof/memprof.c:695: error: too few arguments to function 'execute_internal'
/tmp/pear/memprof/memprof.c:697: error: too few arguments to function 'old_zend_execute_internal'
/tmp/pear/memprof/memprof.c: In function 'OnChangeMemoryLimit':
/tmp/pear/memprof/memprof.c:724: error: too few arguments to function 'zend_mm_set_heap'
/tmp/pear/memprof/memprof.c:726: error: too few arguments to function 'zend_mm_set_heap'
/tmp/pear/memprof/memprof.c: In function 'memprof_enable':
/tmp/pear/memprof/memprof.c:744: error: too few arguments to function 'is_zend_mm'
/tmp/pear/memprof/memprof.c:751: error: too few arguments to function 'zend_mm_set_heap'
/tmp/pear/memprof/memprof.c: In function 'memprof_disable':
/tmp/pear/memprof/memprof.c:773: error: too few arguments to function 'zend_mm_set_heap'
/tmp/pear/memprof/memprof.c: In function 'zm_startup_memprof':
/tmp/pear/memprof/memprof.c:899: error: too few arguments to function 'zend_register_functions'
/tmp/pear/memprof/memprof.c: In function 'zif_memprof_memory_get_usage':
/tmp/pear/memprof/memprof.c:1297: error: too few arguments to function 'zend_mm_set_heap'
/tmp/pear/memprof/memprof.c:1298: error: too few arguments to function 'zend_memory_usage'
/tmp/pear/memprof/memprof.c:1299: error: too few arguments to function 'zend_mm_set_heap'
/tmp/pear/memprof/memprof.c:1301: error: too few arguments to function 'zend_memory_usage'
/tmp/pear/memprof/memprof.c: In function 'zif_memprof_memory_get_peak_usage':
/tmp/pear/memprof/memprof.c:1317: error: too few arguments to function 'zend_mm_set_heap'
/tmp/pear/memprof/memprof.c:1318: error: too few arguments to function 'zend_memory_peak_usage'
/tmp/pear/memprof/memprof.c:1319: error: too few arguments to function 'zend_mm_set_heap'
/tmp/pear/memprof/memprof.c:1321: error: too few arguments to function 'zend_memory_peak_usage'
*** [memprof.lo] Error code 1

Stop in /tmp/pear/pear-build-ranielrLVRCS/memprof-1.0.0.
ERROR: `make' failed

其他 pecl 和 php 模組和擴充都可以。在 Debian 上 wheezy 安裝也可以。 FreeBSD 有問題嗎?

答案1

memprof.c:37:3:錯誤:#error“ZTS 建置尚不支援”

memprof 不支援 PHP 的 ZTS 版本。這意味著 PHP 已使用該--enable-maintainer-zts選項構建,而 memprof 不支援此選項。

您應該在沒有--enable-maintainer-zts開關的情況下建立 PHP。只有在您在線程伺服器中使用 PHP 作為伺服器模組(例如 apache 的worker mpm 中的 mod_php)時才需要此開關,但不建議這樣做。

相關內容