APACHE Compiling Modules (DSO): Difference between revisions

From UNIX Systems Administration
Jump to navigation Jump to search
No edit summary
 
Line 6: Line 6:
=== Long Compile ===
=== Long Compile ===
# Compile each module individually.
# Compile each module individually.
## <tt>'''gcc -fpic -DSHARED_MODULE -I/usr/local/apache2/include -c <module>.c'''</tt>
#: <tt>'''gcc -fpic -DSHARED_MODULE -I/usr/local/apache2/include -c <module>.c'''</tt>


== Linking Modules (DSO) ==
== Linking Modules (DSO) ==
# Link the object code to a shareable module.
# Link the object code to a shareable module.
## <tt>'''# ld -Bshareable -o <module>.so <module>.o'''</tt>
#: <tt>'''# ld -Bshareable -o <module>.so <module>.o'''</tt>
# Copy the module to the live path of Apache.
# Copy the module to the live path of Apache.
## <tt>'''# cp mod_foo.so /path/to/apache/modules/<module>.so'''</tt>
#: <tt>'''# cp mod_foo.so /path/to/apache/modules/<module>.so'''</tt>
# Change the permissions of the module.
# Change the permissions of the module.
## <tt>'''# chmod 755 /path/to/apache/modules/<module>.so'''</tt>
#: <tt>'''# chmod 755 /path/to/apache/modules/<module>.so'''</tt>


== Further Reading ==
== Further Reading ==

Latest revision as of 21:08, 13 December 2017

Compiling Modules (DSO)

Quick Compile

  1. Compile all modules.
    find . -name '*.c' -exec gcc -fpic -DSHARED_MODULE -I/<path to apache include directory>/include -c {} \;

Long Compile

  1. Compile each module individually.
    gcc -fpic -DSHARED_MODULE -I/usr/local/apache2/include -c <module>.c

Linking Modules (DSO)

  1. Link the object code to a shareable module.
    # ld -Bshareable -o <module>.so <module>.o
  2. Copy the module to the live path of Apache.
    # cp mod_foo.so /path/to/apache/modules/<module>.so
  3. Change the permissions of the module.
    # chmod 755 /path/to/apache/modules/<module>.so

Further Reading