3

使用 VC9 (2008) 和 VC10 (2010) 编译我自己的 php 扩展后,使用以下步骤:

http://blog.slickedit.com/2007/09/creating-a-php-5-extension-with-visual-c-2005/

初始化 php 时出现下一个错误:

PHP Warning:  PHP Startup: FirstPHPExt Module: Unable to initialize module
Module compiled with build ID=API20090626,TS
PHP    compiled with build ID=API20090626,TS,VC9
These options need to match
 in Unknown on line 0

为什么它没有说我用VC9编译了模块?

更多信息:

操作系统:Windows7 x64 PHP:5.3.3,TS,VC9

4

3 回答 3

10

好的,我找到了解决方案:

您必须在php-src/Zend/zend_build.h 中添加一个预处理器常量:

#define PHP_COMPILER_ID "VC9"

它会起作用。


在这里找到解决方案:http ://forums.zend.com/viewtopic.php?f=55&t=2045

于 2010-09-04T10:08:36.743 回答
2

构建 PHP 和扩展的官方文档在wiki中。

您应该config.w32为您的扩展创建一个文件并通过命令行构建它。这是官方支持的方法。

于 2010-09-04T22:38:26.540 回答
0

并且强烈建议使用与php本身相同的CRT(VC9)。在 apache、php 或其扩展之间使用混合 CRT 时存在已知问题。

于 2011-07-09T02:09:27.177 回答