Hey.
While I am creating a small build tool and learning more about Clang/GCC and
the various linkers, I came across the differences between shared/dynamic
libraries, plugins and executables on the various platforms. That made me
wonder, how PHP’s plugins are compiled.
For instance, if one had `enable-curl=shared` turned on, with the CGI and CLI
SAPI, we’d get two binaries and a shared object - a „bundle“ on OS X. But,
there are two ways to compile php_curl.so :
-bundle -bundle_loader /path/to/php
or
-bundle -undefined dynamic_lookup
Both are only needed if unresolved symbols occur, though. In my test-run with a
plugin framework, I ran into this issue. By Apple’s docs, one basically needs
-bundle and „flags and switches that one would use during the compilation of an
executable“.
Which of the above methods are mainly used for PHP’s shared extensions? I would
go and try and dig my way thru Make and Autoconf/phpize - but my make-fu is far
beyond what I would need here, only to find one single answer. :)
Kind regards, Ingwie
--
PHP Internals - PHP Runtime Development Mailing List
To unsubscribe, visit: http://www.php.net/unsub.php