perlorg / www.pm.org

Perl Mongers Website
http://www.pm.org
25 stars 53 forks source link

build mod_perl on SLES 11 SP4 #81

Closed juerg-b69 closed 8 years ago

juerg-b69 commented 8 years ago

I hope I'm not wrong with this issue here. I would appreciate any useful hint. I got stuck! I lost enough time! Is anybody out there with experience with this kind of problems?

Environment: SuSE SLES11 SP4, Kernel 3.0.101-68-default http-Server: apache 2.4.18 with OpenSSL 1.0.2e, MySQL 5.6.29

Further either: SLES 11 preinstalled SW: Perl 5.10.0 with mod_perl v2.000004 and bugzilla 4.2.4 being running before.

Or new versions built from source i.e. perl 5.22.1 and mod_perl 2.0.9 and bugzilla -5.0.2

Starting position: The SLES 11 preinstalled http-server Apache 2.2 with OpenSSL 0.9.8 doesn't support TLS1.2 as required today. Hence Apache 2.4 with the mentioned OpenSSL was compiled, built and installed. This runs well. To run bugzilla as before perl and mod_perl is required. Though trying hard, no attempt to install it was successful. Neither with the preinstalled perl / mod_perl, nor with the versions built from source!

Try 1: copy the mod_perl.so (apache 2.2 version) from /usr/lib64/apache2/ to the modules directory of the apache 2.4 installation and load the module within the http.conf. This results in error:

      modules/mod_perl.so: undefined symbol: ap_log_error.

Hence going on this way, much more errors may appear!

Try 2: using preinstalled perl 5.10.0 and source mod-perl 2.0.9 to build and install, using:

     perl Makefile.PL MP_APXS=/opt/apache/http/bin/apxs 

this results in:

     Please repair your Module::CoreList at lib/Apache2/Build.pm line 50.
     BEGIN failed--compilation aborted at lib/Apache2/Build.pm line 65.
     Compilation failed in require at Makefile.PL line 38.
     BEGIN failed--compilation aborted at Makefile.PL line 38.

Apparently a problem with incompatible perl versions, or missing header files, or what else?

Try 3: Compile, build and install perl-5.22.1 In fact this was never a real problem all possible mutations tried, resulted in pass for all tests using make test. make install was always OK too, but building mod-perl failed with:

    [  error] Using Perl 5.022001 w/o ithreads and httpd-2.4.
    [  error] Failed requirements:
    [  error]   - Perl built with ithreads (build perl with -Duseithreads)

A frustrating exercise, because even using -Duseithreads I got the same error again, even after "make clean". Finally after deleting the source and unpacking from tar again with the command:

     ./Configure -Dprefix=/opt/perl -Duseithreads -Accflags=-fPIC

I got a mod_perl.so as desired. However starting the apache server resulted in:

     ./apachectl: line 79:  5760 Segmentation fault      $HTTPD "$@"

Final remark. I'm a Java developer. Being administrator by accident only. I don't know about c / c++ compiler flags. Hence I leave every thing as default when ever I can. I guess the last issue can be corrected changing compiler flags, probabely compiling also apache again. But I would like to know what I'm doing!

jhannah commented 8 years ago

Hello. You've reached Perl Mongers (user group) leader support. We don't support Perl here.

You might find resources to help you at https://www.perl.org/

( In my personal opinion, mod_perl has been deprecated for many years now. )

juerg-b69 commented 8 years ago

OK! But two points: I was coming from perl.org to this forum, though with a doupt, see first line! Second w.r.t. mod_perl both of us are not asked for an opinion. Bugzilla use it, and if a want use bugzilla, I must use mod_perl.

jhannah commented 8 years ago

Howdy. I assume the authors of perl.org meant that you could try contacting your local Perl user group -- maybe someone in your area knows mod_perl? Check www.pm.org for a group near you.

That may be. I don't know anything about Bugzilla either, sorry.