ここで apache2 モジュールの例を取得します。
https://httpd.apache.org/docs/2.4/developer/modguide.html
そこでこのsdsライブラリを使用したいhttps://github.com/antirez/sds
そこで、新しいモジュールを作成し、モジュール ディレクトリに移動します。
apxs -g -n mymodule
cd mod_mymodule
mod_mymodule.c の 44 行目に追加:
#include "sds.h"
49行目のmymodule_handlerに追加します
sds a = sdsnew("a");
sds b = sdsnew("b");
if (sdscmp(a, b) == 0)
return (DECLINED);
また、ライブラリ ファイル (sds.c、sds.h、sdsalloc.h) をモジュール ソース コード ファイルと同じディレクトリに配置し、次を呼び出します。
sudo apxs -i -a -c mod_mymodule.c
次に、Apache を再起動しますが、次の理由で起動に失敗します。
apache2: Syntax error on line 146 of /etc/apache2/apache2.conf: Syntax error on line 1 of /etc/apache2/mods-enabled/mymodule.load: Cannot load /usr/lib/apache2/modules/mod_mymodule.so into server: /usr/lib/apache2/modules/mod_mymodule.so: undefined symbol: sdscmp
質問: apxs コマンドを変更して、新しいモジュールが含まれているライブラリで動作するようにするにはどうすればよいですか?