Apache httpd-2.4
設定ドキュメントからのスニペット:
--enable-mods-shared=MODULE-LIST
Defines a list of modules to be enabled and build as dynamic shared modules. This mean, these module have to be loaded dynamically by using the LoadModule directive.
--enable-mods-static=MODULE-LIST
This option behaves similar to --enable-mods-shared, but will link the given modules statically. This mean, these modules will always be present while running `httpd`. They need not be loaded with LoadModule.
--enable-modules=MODULE-LIST
This option behaves similar to --enable-mods-shared, and will also link the given modules dynamically. The special keyword none disables the build of all modules.
これは、--enable-modules
を使用する場合、LoadModule
ディレクティブを使用せずに、実行時に自動的にリンクすることを意味しますか?これの利点は何ですか?静的ライブラリと動的ライブラリの違いは理解していますが、これは私を混乱させました。
いいえ、--enable-modules
オプションは、--enable-module=none
を設定できるようにするために存在します。特定のautoconf
の動作は acinclude.m4
にあります。
AC_ARG_ENABLE(modules,
Apache_HELP_STRING(--enable-modules=MODULE-LIST,Space-separated list of modules to enable | "all" | "most" | "few" | "none" | "reallyall"),[
if test "$enableval" = "none"; then
module_default=no
module_selection=none
else
for i in $enableval; do
if test "$i" = "all" -o "$i" = "most" -o "$i" = "few" -o "$i" = "reallyall"
then
module_selection=$i
else
i=`echo $i | sed 's/-/_/g'`
eval "enable_$i=shared"
fi
done
fi
])
AC_ARG_ENABLE(mods-shared,
Apache_HELP_STRING(--enable-mods-shared=MODULE-LIST,Space-separated list of shared modules to enable | "all" | "most" | "few" | "reallyall"),[
for i in $enableval; do
if test "$i" = "all" -o "$i" = "most" -o "$i" = "few" -o "$i" = "reallyall"
then
module_selection=$i
module_default=shared
else
i=`echo $i | sed 's/-/_/g'`
eval "enable_$i=shared"
fi
done
])
--enable-mods-shared
はnone
引数を許可しません。
唯一の追加の違いは、--enable-modules
がmodule_default
を設定しないことです。 module_default
はスクリプトの先頭近くで推測され、可能であればshared
に設定されます。動的共有オブジェクトがシステムでサポートされていない場合は、static
に設定されます。
後で、モジュール名がmost
、all
、またはreallyall
に設定されている場合、これらのモジュールはmodule_default
の設定に従って構築されます。
ここにドキュメントから https://httpd.Apache.org/docs/trunk/programs/configure.html
--enable-modules=MODULE-LIST
This option behaves like to --enable-mods-shared, and will also link the given modules dynamically. The special keyword none disables the build of all modules.
これにより、それらが動的にリンクされていることが明らかになることを願っています。