Hello, I recently noticed in FreeBSD ports all of php's extensions are dynamically build and loaded. In an attempt to do this manually on my fedora webservers, I've been met with a few problems.
First off, I've built php 5.0.5 with the following options: './configure' '--prefix=/usr/local/php' '--with-config-file-path=/usr/local/php/conf' '--with-config-file-scan-dir=/z/www/conf/php' '--disable-all' '--disable-ipv6' '--with-regex=php' '--with-apxs2=/usr/local/apache/bin/apxs' This configuration builds and runs just fine. However, the difficulty I encounter occurs when doing the following (I'm just using soap as an example, the results are the same with other extensions): $ cd /usr/src/php-5.0.5/ext/soap $ phpize $ ./configure && make install This executes without error and the extension is built and installed properly to my extensions directory[1]. I enable the module in an extensions.ini file found in the config-file-scan-dir: $ grep soap extensions.ini extension=soap.so After restarting apache, I notice that the extensions.ini file is found and loaded, but the soap extension isn't listed as a loaded module. Trying the cli version of php, it spews the following error: $ php PHP Warning: PHP Startup: Unable to load dynamic library '/usr/local/php/extensions/soap.so' - /usr/local/php/extensions/soap.so: undefined symbol: ps_globals in Unknown on line 0 I suppose my question isn't to ask how to fix installing the soap extension, but rather, is this the correct way to build, install and enable dynamic extensions? What am I doing wrong? This process doesn't seem to work for any of the other extensions I've tried to build and load. Any help would be appreciated. -- Ryan C. Creasey Systems Administrator IGN Entertainment Footnotes: ---------- [1] What's the variable or configure flag to specify this path? With the above build options, it's putting extension files in: /usr/local/php/lib/php/extensions/no-debug-non-zts-20041030 I'd rather they be installed to /usr/local/php/extensions/20041030/.