On Wed, Feb 29, 2012 at 08:50, Christian Ferrari <cam...@yahoo.com> wrote: >>> > Dear all, > >>> > I'm asking your help because I'm not able to solve an issue >> probably >>> related to some foolish mistake I have not yet discovered. >>> > I'm trying to develop an experimental extension to interface LIXA >>> library (http:/lixa.sourceforge.net/). >>> > >>> > I have created the basic stuff (config.m4, lixa.c, php_lixa.h and so >> on). >>> > >>> > If I use this sequence from the ext/lixa directory: >>> > >>> > /opt/php/bin/phpize >>> > ./configure --help >>> > >>> > I can see the lixa extension is available: >>> > >>> > [...] >>> > Optional Packages: >>> > --with-PACKAGE[=ARG] use PACKAGE [ARG=yes] >>> > --without-PACKAGE do not use PACKAGE (same as >> --with-PACKAGE=no) >>> > --with-libdir=NAME Look for libraries in .../NAME rather than >>> .../lib >>> > --with-php-config=PATH Path to php-config php-config >>> > --with-lixa=FILE Include LIXA support. File is the path to >>> lixa-config >>> > >>> > [...] >>> > >>> > and I can compile with: >>> > >>> > ./configure --with-lixa=/opt/lixa/bin/lixa-config >>> --with-php-config=/opt/php/bin/php-config >>> > >>> > the build process runs as expected and the extension is available >> after >>> an addition to php.ini (extension=[...]/ext/lixa/modules/lixa.so). >>> >>> Great, you are done. Why do you want to go any further than this? You >>> built your extension and it is available from PHP exactly like any pecl >>> extension. >>> >> >> and if you're using apache, reboot it and check your phpinfo() page for >> your extension. >> if you're connected up via the command line you can run "php -m" >> to see if >> your modules exists. >> >> >>> >>> -Rasmus >>> > > Dear all, > I would like to see my extension as any other extension, like MySQL, > PostgreSQL, Oracle and so on because: > 1. LIXA itself is useless without those resource managers > 2. I need to patch other extensions to implement the interfaces between LIXA > and MySQL/PostgreSQL/Oracle. > What's the difference between an "internal" extension (like > MySQL/PostgreSQL/Oracle) and an "external" extension as the one I > produced? > Thanks in advance, your help is precious.
The PHP source archive bundles several extensions under the ext/ directory, these are the extensions are listed when you run ./configure --help I don't understand why you want your extension to show up there, but to do so you have to place your extension in that folder and run ./buildconf --force PHP will not automatically scan your filesystem for possible extension directories to list them under ./configure I'm sure you have seen, and used, http://pecl.php.net - these extensions don't show up when you build PHP. The standard way to build "external" extensions however is to use pecl, or manually build them as shared modules (as you did first). -Hannes -- PHP Internals - PHP Runtime Development Mailing List To unsubscribe, visit: http://www.php.net/unsub.php