I am trying to get the xmlrpc extension to work for php5 in MAMP (1.8.4).
I checked what version of PHP 5 was installed:
$ /Applications/MAMP/bin/php5/bin/php -v
PHP 5.2.11 (cli) (built: Dec 12 2009 13:19:08)
Copyright (c) 1997-2009 The PHP Group
Zend Engine v2.2.0, Copyright (c) 1998-2009 Zend Technologies
with Zend Extension Manager v1.2.2, Copyright (c) 2003-2007, by Zend Technologies
with Zend Optimizer v3.3.9, Copyright (c) 1998-2009, by Zend Technologies
I downloaded the PHP 5.2.11 source bundles, and built a shared library for xmlrpc:
$ LIBS=-lresolv ./configure --prefix=/opt --with-xmlrpc=shared
$ make
$ ls modules
xmlrpc.a xmlrpc.la xmlrpc.so
I copied these files into MAMP:
$ cp modules/* /Applications/MAMP/bin/php5/lib/php/extensions/no-debug-non-zts-20060613/
I added the extension setting to the ini file:
$ vi /Applications/MAMP/conf/php5/php.ini
extension=xmlrpc.so
I restarted MAMP:
$ ./bin/stop.sh
$ ./bin/start.sh
When I do a phpinfo
the only reference to xmlrpc
I find is in the PHP Core section:
xmlrpc_error_number => 0 => 0
xmlrpc_errors => Off => Off
I am trying to install Moodle and it still tells me that the xmlrpc extension is not available.
I'm a PHP novice, so if someone could tell me how to confirm the extension is available or not that would be great, or at least some pointers on how to debug this further.
Thanks.
UPDATE: I found the PHP log file and it has the following entry:
[08-Jan-2010 23:37:52] PHP Warning: PHP Startup: Unable to load dynamic \
library '/Applications/MAMP/bin/php5/lib/php/extensions/ \
no-debug-non-zts- 20060613/xmlrpc.so' - (null) in Unknown on line 0
Are you using the MAMP bundle package from moodle website? http://download.moodle.org/download.php/macosx/Moodle4Mac-XAMPP-20.dmg This one should work.
The reason PHP failed to load extension may cause by architecture type, PHP and its extension must use the same architecture type parameter in CFLAG.
I was having similar problem, but I wasn't using MAMP, I compiled PHP using static linking, sometimes, Mac OS X has weired problem to load dynamic library.
This way worked for me:
/Applications/XAMPP/xamppfiles/lib/php/php-5.3.1/extensions/no-debug-non-zts-20090626
) to MAMP's PHP extension folder (mine is/Applications/MAMP/bin/php5.3/lib/php/extensions/no-debug-non-zts-20090626/
);extension=xmlrpc.so
toPHP.INI
.Restarted MAMP and that was it. Hope it helps! :-)
Just be sure to move the xmlrpc.so file to the location /Applications/MAMP/bin/php5.3/lib/php/extensions/no-debug-non-zts-20090626/ (PHP version could be also 5.4 or 5.5) Then restart MAMP Then in your moodle install just click continue, it will still say that you should check the installation just continue. It will start installing and will finish installing all modules and components, when all installed press Command F (MAC) or Control F (Win) and search for xmlrpc.so You will see that is succeed, so don't worry, it will work.
Run the following commands from terminal
./configure
make