PHP 5.3.0RC2 +mysql, no extension_dir = no-debug-non-zts-20090115/

Ryan Schmidt ryandesign at
Tue Jun 9 17:44:04 PDT 2009

On Jun 8, 2009, at 06:44, Sebastian Wojtowicz wrote:

> I'm kind of a newbie in Mac but I have managed to install several  
> PHP versions with mysql and stuff like that before.
> Only now, I can't install the new PHP version.
> Well ok, I can, but somehow php is always looking for the  
> extensions in
> /opt/local/lib/php/extensions/no-debug-non-zts-20090115/
> This directory doesn't exist. Only
> /opt/local/lib/php/
> exists. So when I include an extension, by taking away the ";" in  
> the php.ini, I get a warning
> PHP Warning:  PHP Startup: Unable to load dynamic library '/opt/ 
> local/lib/php/extensions/no-debug-non-zts-20090115/....' ....
> I also find it strange, that this is the default directory. Where  
> does it come from ?! in the php.ini I have
> ; extension_dir = "./"
> I tried to set to other directories, but I have no idea where my  
> extensions are.
> Last try I installed php like this
> sudo port install mysql5 +server
> sudo port install apache2
> sudo port install php5-devel +apache2+mysql5
> and before like this (that would be what I prefer)
> sudo port install php5-devel +apache2+macosx+mysql5+pear 
> +postgresql83+sqlite
> and I also tried with 20 different variations.
> I have uninstalled and deleted everything related to macports (like  
> written in the FAQ) twice
> And I have no Idea what I can do else, I feel very helpless
> So the questions would be
> Where does /extensions/no-debug-non-zts-20090115/ come from
> Where do I really find my extension dir, so that I can use mysql  
> and sqlite and stuff like that (also ImageMagick in future, but  
> thats another thing)
> Or what do I have to change (Portfile ?!) so that there is a  
> progress ?!?


/opt/local/lib/php/extensions/no-debug-non-zts-20090115/ is the  
directory where PHP 5.3 extensions would be stored, if you had  
installed any. You haven't installed any extensions. All the variants  
you selected, such as +mysql5 and +postgresql83, currently build  
themselves into the php programs and libraries directly. They're  
always on. You don't need to change anything in the php.ini to enable  

These variants will be removed from the php ports in the future to be  
replaced with separate ports which will install as extensions in the  
above mentioned directory. You still won't have to change anything in  
php.ini to enable them, since they will install small ini files of  
their own in /opt/local/var/db/php5 which PHP reads automatically in  
addition to the regular php.ini. If you're interested in more about  
this upcoming change, you can read the ticket:

More information about the macports-users mailing list