在Linux上,我从源代码安装了PHP 5.3.8。 使用phpize来安装扩展工作正常,但不是在一个特定的扩展名(mysqlnd)。
# cd /opt/php/5.3.8/ext/pdo && /opt/php/5.3.8/bin/phpize ... this runs ok # cd /opt/php/5.3.8/ext/mysqlnd && /opt/php/5.3.8/bin/phpize Cannot find config.m4. Make sure that you run '/opt/php/5.3.8/bin/phpize' in the top level source directory of the module`
正如你所看到的,错误不可能是因为我不在顶层源代码目录中。 我试图从ext文件夹调用phpize – 也没有工作! 有关我已安装m4的信息
任何想法? 谢谢 :)
问题是mysqlnd的m4文件不是config.m4而是config9.m4。 这是一个依赖机制,以确保buildconf把它放在configuration的最后。 有人可能会争辩说, phpize应该知道这一点,目前它不。
解决方法是将config9.m4重命名为config.m4,但是请注意,“正常”构build将不起作用。
另外请注意,PHP 5.3.8不允许将mysqlnd构build为共享,因此上述解决方法将不起作用。 不过,这将被允许在PHP 5.3.9中。 这仍然不能解决config.m4与config9.m4问题,但是对于PHP,您将能够执行--enable-mysqlnd=shared来接收mysqlnd.so作为主PHP构build的一部分。
尝试从MySQL文件夹运行phpize
你可以在这里查看相同的post: http : //kmaiti.blogspot.com/2010/08/cannot-find-configm4-phpize-resolved.html