Take the 2-minute tour ×
Server Fault is a question and answer site for professional system and network administrators. It's 100% free, no registration required.

On Linux, I installed php 5.3.8 from source. Using phpize for installing an extension works fine but not on one specific extension (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`

As you can see error can not be that I am not on top level source directory since I am. I tried to call phpize from ext folder - did not work either! For info I have m4 installed

Any idea? Thanks :)

share|improve this question
    
kmaiti.blogspot.com/2010/08/… –  User4283 Sep 25 '11 at 17:22
add comment

2 Answers

Try to run phpize from mysql folder

You can check the same post here : http://kmaiti.blogspot.com/2010/08/cannot-find-configm4-phpize-resolved.html

share|improve this answer
    
I hear you well, these kind of errors happen when you run phpize from ext instead than from the extension folder. That's what I do and it does not work :( –  Francois Sep 25 '11 at 17:37
add comment

The issue is that mysqlnd's m4 file is not config.m4 but config9.m4. This is a dependency mechanism, to ensure buildconf puts it at the end of configure. One might argue that phpize should know about this, currently it doesn't.

A work-around is to rename config9.m4 to config.m4, but mind that a "normal" build won't work then.

Note also that PHP 5.3.8 doesn't allow mysqlnd to be built shared, so above work-around won't work. This will be allowed in PHP 5.3.9, though. This still not solve the config.m4 vs. config9.m4 issue, but for PHP you will be able to do --enable-mysqlnd=shared to receive mysqlnd.so as part of the main PHP build.

share|improve this answer
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.