Install apache dso support




















The idea is simple: When installing Apache the configure 's make install procedure installs the Apache C header files and puts the platform-dependent compiler and linker flags for building DSO files into the apxs program. This way the user can use apxs to compile his Apache module sources without the Apache distribution source tree and without having to fiddle with the platform-dependent compiler and linker flags for DSO support.

To give you an overview of the DSO features of Apache 2. In all cases, once the shared module is compiled, you must use a LoadModule directive in httpd. This loading can usually be done in two ways: Automatically by a system program called ld. This hard-codes library references into the executable program file so that at start-time the Unix loader is able to locate libfoo.

It then resolves any yet unresolved symbols in the executable program which are available in the DSO. Symbols in the executable program are usually not referenced by the DSO because it's a reusable library of general code and hence no further resolving has to be done. The executable program has no need to do anything on its own to use the symbols from the DSO because the complete resolving is done by the Unix loader.

In fact, the code to invoke ld. The advantage of dynamic loading of common library code is obvious: the library code needs to be stored only once, in a system library like libc. In the second way the DSO's are usually called shared objects or DSO files and can be named with an arbitrary extension although the canonical name is foo. These files usually stay inside a program-specific directory and there is no automatically established link to the executable program where they are used.

Instead the executable program manually loads the DSO at run-time into its address space via dlopen. A brief introduction.. Configuring and troubleshooting.. Leave a Reply Cancel reply You must be logged in to post a comment. Statically embed the PHP binary into the Apache binary. To simplify this creation of DSO files for Apache httpd modules especially for third-party modules a support program named apxs APache eXtenSion is available. It can be used to build DSO based modules outside of the Apache httpd source tree.

The idea is simple: When installing Apache HTTP Server the configure 's make install procedure installs the Apache httpd C header files and puts the platform-dependent compiler and linker flags for building DSO files into the apxs program. This way the user can use apxs to compile his Apache httpd module sources without the Apache httpd distribution source tree and without having to fiddle with the platform-dependent compiler and linker flags for DSO support.

Only a basic set will be loaded during server startup. You can change the set of loaded modules by activating or deactivating the LoadModule directives in httpd. Some modules are only useful for developers and will not be build. To build all available modules including developer modules use reallyall.

In addition the LoadModule directives for all built modules can be activated via the configure option --enable-load-all-modules. In all cases, once the shared module is compiled, you must use a LoadModule directive in httpd. This loading can usually be done in two ways: automatically by a system program called ld. This hard-codes library references into the executable program file so that at start-time the Unix loader is able to locate libfoo.

It then resolves any yet unresolved symbols in the executable program which are available in the DSO. Symbols in the executable program are usually not referenced by the DSO because it's a reusable library of general code and hence no further resolving has to be done.



0コメント

  • 1000 / 1000