I am trying to compile Modperl 2.0.9 on windows with Strawberry Perl 5.20.2 and Apache 2.2.31 (all 64 bit) Preferable would be to use Apache 2.4 but that might be a bridge to far.
I use the binary version from Apachelounge. My first question is, is this supported ? and can it be done with the Mingw32 environment that comes with Strawberry Perl ? When I try to do so, at I first run into the problem with not finding the ap_config_auto.h file When I look in the apache include file ap_config.h there is a line #if (!defined(WIN32) && !defined(NETWARE)) || defined(__MINGW32__) #include "ap_config_auto.h" #include "ap_config_layout.h" #endif What I found was that the ap_config_auto was created by the Configure script that runs on linux when building Apache. On Windows this include file is not available. When I remove '|| defined(__MINGW32__)' and continue I can run the Make file without errors. If I run dmake it starts compiling and after some build modules I get errors saying: mod_perl.lo:mod_perl.c:(.text+0x1a9): undefined reference to `__imp_apr_dynamic_fn_register' mod_perl.lo:mod_perl.c:(.text+0x1d3): undefined reference to `__imp_ap_server_config_defines' mod_perl.lo:mod_perl.c:(.text+0x1dc): undefined reference to `__imp_apr_array_push' mod_perl.lo:mod_perl.c:(.text+0x1ef): undefined reference to `__imp_apr_pstrdup' mod_perl.lo:mod_perl.c:(.text+0x20a): undefined reference to `__imp_ap_hook_pre_config' mod_perl.lo:mod_perl.c:(.text+0x21f): undefined reference to `__imp_ap_hook_open_logs' mod_perl.lo:mod_perl.c:(.text+0x237): undefined reference to `__imp_ap_hook_post_config' mod_perl.lo:mod_perl.c:(.text+0x23e): undefined reference to `__imp_ap_hook_handler' mod_perl.lo:mod_perl.c:(.text+0x26d): undefined reference to `__imp_ap_hook_insert_filter' mod_perl.lo:mod_perl.c:(.text+0x29c): undefined reference to `__imp_ap_register_output_filter' ... And some more of these when building mod_perl.so And then ?? Can it be that the mingw32 environment is not working with the .dll or .lib files from Apache ? Is my environment not correct, do I need to use the MSYS2 shell ? Sorry many question, any help is welcome. -- Thomas den Braber