Loading ...
Sorry, an error occurred while loading the content.

mp2 Apache2.0.49 on HPUX11i : mod_perl does not load in Apache

Expand Messages
  • olivier blanc
    1. Problem Description: While trying to load compiled DSO modperl in Apache, I got the following error : Syntax error on line 223 of
    Message 1 of 17 , Apr 29, 2004
    • 0 Attachment
      1. Problem Description:


      While trying to load compiled DSO modperl in Apache, I got the following
      error :


      Syntax error on line 223 of /opt/hpws/apache2/conf/httpd.conf:
      Cannot load /opt/hpws/apache2/modules/mod_perl.so into server: Error 0


      Perl and Apache have been compiled in 64 bits, modperl also.
      Apache and Perl are not compiled in debug mode (at this time, there is
      no debug mode for 64 bits).
      All is running on HPUX11i (uname -a => HP-UX w44h B.11.11 U 9000/800
      1753907651 unlimited-user license)


      Does any one successfully compiled and run mod_perl in such situation ?


      Thanks for any help




      Olivier


      2. Used Components and their Configuration:


      *** mod_perl version 1.9914

      *** using lib/Apache/BuildConfig.pm
      *** Makefile.PL options:
      MP_APXS => /opt/hpws/apache2/bin/apxs
      MP_COMPAT_1X => 1
      MP_GENERATE_XS => 1
      MP_LIBNAME => mod_perl
      MP_USE_DSO => 1
      MP_USE_STATIC => 1


      *** /opt/hpws/apache2/bin/httpd -V
      Server version: Apache/2.0.49
      Server built: Apr 28 2004 10:02:11
      Server's Module Magic Number: 20020903:7
      Architecture: 64-bit
      Server compiled with....
      -D APACHE_MPM_DIR="server/mpm/worker"
      -D APR_HAS_SENDFILE
      -D APR_HAS_MMAP
      -D APR_HAVE_IPV6 (IPv4-mapped addresses enabled)
      -D APR_USE_SYSVSEM_SERIALIZE
      -D APR_USE_PTHREAD_SERIALIZE
      -D APR_HAS_OTHER_CHILD
      -D AP_HAVE_RELIABLE_PIPED_LOGS
      -D HTTPD_ROOT="/opt/hpws/apache2"
      -D SUEXEC_BIN="/opt/hpws/apache2/bin/suexec"
      -D DEFAULT_SCOREBOARD="logs/apache_runtime_status"
      -D DEFAULT_ERRORLOG="logs/error_log"
      -D AP_TYPES_CONFIG_FILE="conf/mime.types"
      -D SERVER_CONFIG_FILE="conf/httpd.conf"

      *** /opt/perl583/bin/perl -V
      Summary of my perl5 (revision 5.0 version 8 subversion 3) configuration:
      Platform:
      osname=hpux, osvers=11.11, archname=PA-RISC2.0-thread-multi-LP64
      uname='hp-ux loire b.11.11 u 9000800 1756907651 unlimited-user license '
      config_args='-A prepend:libswanted=cl pthread -Accflags=+Z
      -Dusethreads -Duse64bitall -Duse64bitint -Dprefix=/opt/perl583'
      hint=recommended, useposix=true, d_sigaction=define
      usethreads=define use5005threads=undef useithreads=define
      usemultiplicity=define
      useperlio=define d_sfio=undef uselargefiles=define usesocks=undef
      use64bitint=define use64bitall=define uselongdouble=undef
      usemymalloc=n, bincompat5005=undef
      Compiler:
      cc='cc', ccflags =' -D_POSIX_C_SOURCE=199506L -D_REENTRANT -Ae
      -D_HPUX_SOURCE -Wl,+vnocompatwarnings +DD64 +Z -I/usr/local/include
      -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 ',
      optimize='+O2 +Onolimit',
      cppflags='-Aa -D__STDC_EXT__ -D_HPUX_SOURCE
      -D_POSIX_C_SOURCE=199506L -D_REENTRANT -Ae -D_HPUX_SOURCE
      -Wl,+vnocompatwarnings +DD64 +Z -I/usr/local/include'
      ccversion='B.11.11.04', gccversion='', gccosandvers=''
      intsize=4, longsize=8, ptrsize=8, doublesize=8, byteorder=87654321
      d_longlong=define, longlongsize=8, d_longdbl=define, longdblsize=16
      ivtype='long', ivsize=8, nvtype='double', nvsize=8, Off_t='off_t',
      lseeksize=8
      alignbytes=8, prototype=define
      Linker and Libraries:
      ld='/usr/bin/ld', ldflags =' +DD64 -L/usr/local/lib -L/lib/pa20_64'
      libpth=/usr/local/lib /lib/pa20_64 /lib /usr/lib /usr/ccs/lib
      libs=-lcl -lpthread -lnsl -lnm -ldl -ldld -lm -lsec -lc
      perllibs=-lcl -lpthread -lnsl -lnm -ldl -ldld -lm -lsec -lc
      libc=/lib/pa20_64/libc.sl, so=sl, useshrplib=false, libperl=libperl.a
      gnulibc_version=''
      Dynamic Linking:
      dlsrc=dl_hpux.xs, dlext=sl, d_dlsymun=undef, ccdlflags='-Wl,-E
      -Wl,-B,deferred '
      cccdlflags='+Z', lddlflags='-b +vnocompatwarnings -L/usr/local/lib
      -L/lib/pa20_64'


      Characteristics of this binary (from libperl):
      Compile-time options: MULTIPLICITY USE_ITHREADS USE_64_BIT_INT
      USE_64_BIT_ALL USE_LARGE_FILES PERL_IMPLICIT_CONTEXT
      Built under hpux
      Compiled at Apr 21 2004 17:52:15
      %ENV:
      PERL_LWP_USE_HTTP_10="1"
      @INC:
      /opt/perl583/lib/5.8.3/PA-RISC2.0-thread-multi-LP64
      /opt/perl583/lib/5.8.3
      /opt/perl583/lib/site_perl/5.8.3/PA-RISC2.0-thread-multi-LP64
      /opt/perl583/lib/site_perl/5.8.3
      /opt/perl583/lib/site_perl
      .

      *** Packages of interest status:

      Apache::Request: -
      CGI : 3.05
      LWP : 5.79
      mod_perl : 1.9914


      3. This is the core dump trace: (if you get a core dump):

      [CORE TRACE COMES HERE]

      This report was generated by t/REPORT on Thu Apr 29 15:09:14 2004 GMT.



      --
      Report problems: http://perl.apache.org/bugs/
      Mail list info: http://perl.apache.org/maillist/modperl.html
      List etiquette: http://perl.apache.org/maillist/email-etiquette.html
    • Stas Bekman
      ... We have several other platforms with the same problem. Do you have any other DSO modules that do load OK with Apache2? We afraid this has to do with DSO
      Message 2 of 17 , Apr 29, 2004
      • 0 Attachment
        olivier blanc wrote:
        > 1. Problem Description:
        >
        >
        > While trying to load compiled DSO modperl in Apache, I got the following
        > error :
        >
        >
        > Syntax error on line 223 of /opt/hpws/apache2/conf/httpd.conf:
        > Cannot load /opt/hpws/apache2/modules/mod_perl.so into server: Error 0
        >
        >
        > Perl and Apache have been compiled in 64 bits, modperl also.
        > Apache and Perl are not compiled in debug mode (at this time, there is
        > no debug mode for 64 bits).
        > All is running on HPUX11i (uname -a => HP-UX w44h B.11.11 U 9000/800
        > 1753907651 unlimited-user license)
        >
        >
        > Does any one successfully compiled and run mod_perl in such situation ?

        We have several other platforms with the same problem. Do you have any other
        DSO modules that do load OK with Apache2? We afraid this has to do with DSO
        support on those platforms. So far nobody came out and volunteered to figure
        out what's wrong. So this issue is in flux.

        Philippe is working on a static build to solve this problem, We haven't
        integrated it, since it may change somewhat but give a try to his patch and
        instructions posted here:

        http://marc.theaimsgroup.com/?l=apache-modperl-dev&m=108310633610736&w=2

        Please let us know if this worked for you.
        (obviously you want to remove the LoadModule instruction from your own server
        if you use the static build, but just passing the test suite would be great!)

        --
        __________________________________________________________________
        Stas Bekman JAm_pH ------> Just Another mod_perl Hacker
        http://stason.org/ mod_perl Guide ---> http://perl.apache.org
        mailto:stas@... http://use.perl.org http://apacheweek.com
        http://modperlbook.org http://apache.org http://ticketmaster.com

        --
        Report problems: http://perl.apache.org/bugs/
        Mail list info: http://perl.apache.org/maillist/modperl.html
        List etiquette: http://perl.apache.org/maillist/email-etiquette.html
      • olivier.blanc@dgi.finances.gouv.fr
        hello all, I finally manage to recompile mod_perl in static mod and Apache to be linked with mod_perl. It works correctly for now on. I just found a problem
        Message 3 of 17 , Apr 30, 2004
        • 0 Attachment
          hello all,

          I finally manage to recompile mod_perl in static mod and Apache to be linked with mod_perl.
          It works correctly for now on.
          I just found a problem that I have to work on :
          in Apache error_log file I found the following lines :

          /usr/lib/pa20_64/dld.sl: Unsatisfied code symbol 'modperl_bucket_sv_create' in load module '/opt/perl583/lib/site_perl/5.8.3/PA-RISC2.0-thread-multi-LP64/auto/APR/Bucket/Bucket.sl'.

          Thanks for your help,

          Olivier
          ----------------
          Olivier Blanc
          Bureau SI6 / DFPRO / ET
          Ministère des Finances
          Tel.: +33(0)240 128 909
          mailto:olivier.blanc@...



          Stas Bekman <stas@...>

          29/04/2004 19:42

                 
                  Pour :        olivier blanc <olivier.blanc@...>
                  cc :        modperl@...
                  Objet :        Re: mp2 Apache2.0.49 on HPUX11i : mod_perl does not load in Apache



          olivier blanc wrote:
          > 1. Problem Description:
          >                                                                                                                                              
          >
          > While trying to load compiled DSO modperl in Apache, I got the following
          > error :
          >                                                                                                                                              
          >
          > Syntax error on line 223 of /opt/hpws/apache2/conf/httpd.conf:
          > Cannot load /opt/hpws/apache2/modules/mod_perl.so into server: Error 0
          >                                                                                                                                              
          >
          > Perl and Apache have been compiled in 64 bits, modperl also.
          > Apache and Perl are not compiled in debug mode (at this time, there is
          > no debug mode for 64 bits).
          > All is running on HPUX11i (uname -a => HP-UX w44h B.11.11 U 9000/800
          > 1753907651 unlimited-user license)
          >                                                                                                                                              
          >
          > Does any one successfully compiled and run mod_perl in such situation ?

          We have several other platforms with the same problem. Do you have any other
          DSO modules that do load OK with Apache2? We afraid this has to do with DSO
          support on those platforms. So far nobody came out and volunteered to figure
          out what's wrong. So this issue is in flux.

          Philippe is working on a static build to solve this problem, We haven't
          integrated it, since it may change somewhat but give a try to his patch and
          instructions posted here:

          http://marc.theaimsgroup.com/?l=apache-modperl-dev&m=108310633610736&w=2

          Please let us know if this worked for you.
          (obviously you want to remove the LoadModule instruction from your own server
          if you use the static build, but just passing the test suite would be great!)

          --
          __________________________________________________________________
          Stas Bekman            JAm_pH ------> Just Another mod_perl Hacker
          http://stason.org/     mod_perl Guide ---> http://perl.apache.org
          mailto:stas@... http://use.perl.org http://apacheweek.com
          http://modperlbook.org http://apache.org   http://ticketmaster.com


        • William A. Rowe, Jr.
          ... Hmmm, while I don t have your answer, I have a hint. Take a look back at rev 1.57 of http://cvs.apache.org/viewcvs.cgi/apr/dso/unix/dso.c
          Message 4 of 17 , Apr 30, 2004
          • 0 Attachment
            At 10:38 AM 4/29/2004, olivier blanc wrote:
            >
            >While trying to load compiled DSO modperl in Apache, I got the following error

            >Syntax error on line 223 of /opt/hpws/apache2/conf/httpd.conf:
            >Cannot load /opt/hpws/apache2/modules/mod_perl.so into server: Error 0

            Hmmm, while I don't have your answer, I have a hint. Take a look
            back at rev 1.57 of

            http://cvs.apache.org/viewcvs.cgi/apr/dso/unix/dso.c

            http://cvs.apache.org/viewcvs.cgi/apr/dso/unix/dso.c?r1=1.56&r2=1.57

            and back that bit out. Passing
            BIND_VERBOSE to shl_load()
            will spew
            ugly junk into your error log (you might even test w/ httpd -X -t which does
            a pretty trivial attempt to just get the module to load.)

            One fix for 32 bit builds that might need to be backed out to build successfully
            for 64 bit builds is rev 1.490 of;

            http://cvs.apache.org/viewcvs.cgi/apr/configure.in

            http://cvs.apache.org/viewcvs.cgi/apr/configure.in?r1=1.489&r2=1.490

            That patch addressed the fact that -ldl support in the hpux-11 family has
            been incremental and spotty. If you move a 32 bit build from one hpux-11
            box to another, it now just works. But revert that patch as I suggest, and
            you discover the boxes vary quite a bit.

            If the apr project expanded on that 1.490 fix, it would be best to build -ldld
            flavor dso on a 32 bit build, -ldl (hpux-11i only) for 64 bit builds, if reverting
            this patch helps you get modules loading.

            Good luck,

            Bill

            Bill


            --
            Report problems: http://perl.apache.org/bugs/
            Mail list info: http://perl.apache.org/maillist/modperl.html
            List etiquette: http://perl.apache.org/maillist/email-etiquette.html
          • Stas Bekman
            ... Fantastic. You are the first user to try the static mod_perl 2! Did the test suite pass 100%? ... When did it happen? During the startup? Inside the test
            Message 5 of 17 , Apr 30, 2004
            • 0 Attachment
              olivier.blanc@... wrote:
              > hello all,
              >
              > I finally manage to recompile mod_perl in static mod and Apache to be
              > linked with mod_perl.
              > It works correctly for now on.

              Fantastic. You are the first user to try the static mod_perl 2!

              Did the test suite pass 100%?

              > I just found a problem that I have to work on :
              > in Apache error_log file I found the following lines :

              When did it happen? During the startup? Inside the test suite?

              > /usr/lib/pa20_64/dld.sl: Unsatisfied code symbol
              > 'modperl_bucket_sv_create' in load module
              > '/opt/perl583/lib/site_perl/5.8.3/PA-RISC2.0-thread-multi-LP64/auto/APR/Bucket/Bucket.sl'.

              That means that something was loading APR::Bucket w/o mod_perl environment.
              Try to set:

              use Carp;
              $SIG{__DIE__} = \&Carp::confess;

              at the top of your startup file or <Perl> sections and it should show you
              where that code was invoked from.

              __________________________________________________________________
              Stas Bekman JAm_pH ------> Just Another mod_perl Hacker
              http://stason.org/ mod_perl Guide ---> http://perl.apache.org
              mailto:stas@... http://use.perl.org http://apacheweek.com
              http://modperlbook.org http://apache.org http://ticketmaster.com

              --
              Report problems: http://perl.apache.org/bugs/
              Mail list info: http://perl.apache.org/maillist/modperl.html
              List etiquette: http://perl.apache.org/maillist/email-etiquette.html
            • Stas Bekman
              Thanks Bill! Do other Apache modules work as DSO on those platforms? We have DSO problems with OpenBSD 2.9, FreeBSD (not sure which version) and a few others,
              Message 6 of 17 , Apr 30, 2004
              • 0 Attachment
                Thanks Bill!

                Do other Apache modules work as DSO on those platforms?

                We have DSO problems with OpenBSD 2.9, FreeBSD (not sure which version) and a
                few others, not sure if they are related at all. Most of the time there is no
                error at all, httpd just hangs.


                --
                __________________________________________________________________
                Stas Bekman JAm_pH ------> Just Another mod_perl Hacker
                http://stason.org/ mod_perl Guide ---> http://perl.apache.org
                mailto:stas@... http://use.perl.org http://apacheweek.com
                http://modperlbook.org http://apache.org http://ticketmaster.com

                --
                Report problems: http://perl.apache.org/bugs/
                Mail list info: http://perl.apache.org/maillist/modperl.html
                List etiquette: http://perl.apache.org/maillist/email-etiquette.html
              • Stas Bekman
                [Olivier, please remember to keep the messages on the list. Thanks] So your error log shows that there are quite a few problem. How is it possible that you did
                Message 7 of 17 , Apr 30, 2004
                • 0 Attachment
                  [Olivier, please remember to keep the messages on the list. Thanks]

                  So your error log shows that there are quite a few problem. How is it possible
                  that you did get 'make test' to pass. Or did it?

                  =======================================
                  # Failed test 6 in /var/tmp/apache_perl/modperl-2.0/t/response/TestAPI/module.pm
                  at line 87
                  /usr/lib/pa20_64/dld.sl: Unsatisfied code symbol 'modperl_bucket_sv_create' in
                  load module '/var/tmp/apache_perl/modperl-2.0/blib/arch/auto/APR/Bucket/Bucket.sl
                  '.
                  [Fri Apr 30 17:51:06 2004] [notice] child pid 5003 exit signal Illegal
                  instruction (4)
                  # Failed test 5 in /var/tmp/apache_perl/modperl-2.0/t/response/TestAPR/netlib.pm
                  at line 46

                  [Fri Apr 30 17:53:38 2004] [error] [client 0.0.0.0] Can't dup STDIN: Bad file
                  number at /var/tmp/apache_perl/modperl-2.0/t/response/TestModperl/io_with_closed_s
                  tds.pm line 24.\n

                  # Failed test 8 in
                  /var/tmp/apache_perl/modperl-2.0/t/response/TestModperl/setupenv.pm at line 35
                  # Failed test 22 in
                  /var/tmp/apache_perl/modperl-2.0/t/response/TestModperl/setupenv.pm at line 115
                  # Failed test 29 in
                  /var/tmp/apache_perl/modperl-2.0/t/response/TestModperl/setupenv.pm at line 35
                  fail #2
                  # Failed test 36 in
                  /var/tmp/apache_perl/modperl-2.0/t/response/TestModperl/setupenv.pm at line 35
                  fail #3
                  # Failed test 50 in
                  /var/tmp/apache_perl/modperl-2.0/t/response/TestModperl/setupenv.pm at line 35
                  fail #4
                  # Failed test 57 in
                  /var/tmp/apache_perl/modperl-2.0/t/response/TestModperl/setupenv.pm at line
                  115 fail #2
                  =================================

                  So you have a bunch of these errors:

                  /usr/lib/pa20_64/dld.sl: Unsatisfied code symbol 'modperl_bucket_sv_create' in

                  Is nm(1) working on your platform? If so, please try:

                  nm /path/to/your/httpd | grep modperl_bucket_sv_create


                  __________________________________________________________________
                  Stas Bekman JAm_pH ------> Just Another mod_perl Hacker
                  http://stason.org/ mod_perl Guide ---> http://perl.apache.org
                  mailto:stas@... http://use.perl.org http://apacheweek.com
                  http://modperlbook.org http://apache.org http://ticketmaster.com

                  --
                  Report problems: http://perl.apache.org/bugs/
                  Mail list info: http://perl.apache.org/maillist/modperl.html
                  List etiquette: http://perl.apache.org/maillist/email-etiquette.html
                • William A. Rowe, Jr.
                  ... Since my builds are 32 bit, I can t tell you for certain, but I d expect the httpd/apr folks would have heard by now of a problem. Difference, is that most
                  Message 8 of 17 , Apr 30, 2004
                  • 0 Attachment
                    At 12:23 PM 4/30/2004, Stas Bekman wrote:
                    >Thanks Bill!
                    >
                    >Do other Apache modules work as DSO on those platforms?

                    Since my builds are 32 bit, I can't tell you for certain, but I'd expect
                    the httpd/apr folks would have heard by now of a problem.

                    Difference, is that most modules are not nearly as complex, nor require
                    the startup constructor and destructor logic that mod_perl needs.

                    Oh, silly observation - but if the whole thing is fluxored, I wonder if modperl,
                    or perl is compiled against some additional 32-bit libs.

                    HP is migrating folks away from shl_xxx api to the dl_xxx api, but they
                    have done a lousy job on consistency in hpux-11/32 bit. With their 11i
                    64 bit support they have been much more consistent, and practically
                    scream for users to move to dl_xxx. This is why I wanted Olivier to try
                    backing out that patch that picks up shl_ over dl_.

                    >We have DSO problems with OpenBSD 2.9, FreeBSD (not sure which version) and a few others, not sure if they are related at all. Most of the time there is no error at all, httpd just hangs.

                    Altogether unrelated, I expect. The items I mentioned were unique to HP/UX.



                    --
                    Report problems: http://perl.apache.org/bugs/
                    Mail list info: http://perl.apache.org/maillist/modperl.html
                    List etiquette: http://perl.apache.org/maillist/email-etiquette.html
                  • Stas Bekman
                    ... Right. ... Olivier has posted his perl -V , it s hard to tell for sure, but take a look at the Compiler section below: *** /opt/perl583/bin/perl -V
                    Message 9 of 17 , Apr 30, 2004
                    • 0 Attachment
                      William A. Rowe, Jr. wrote:
                      > At 12:23 PM 4/30/2004, Stas Bekman wrote:
                      >
                      >>Thanks Bill!
                      >>
                      >>Do other Apache modules work as DSO on those platforms?
                      >
                      >
                      > Since my builds are 32 bit, I can't tell you for certain, but I'd expect
                      > the httpd/apr folks would have heard by now of a problem.
                      >
                      > Difference, is that most modules are not nearly as complex, nor require
                      > the startup constructor and destructor logic that mod_perl needs.

                      Right.

                      > Oh, silly observation - but if the whole thing is fluxored, I wonder if modperl,
                      > or perl is compiled against some additional 32-bit libs.

                      Olivier has posted his 'perl -V', it's hard to tell for sure, but take a look
                      at the 'Compiler' section below:

                      *** /opt/perl583/bin/perl -V
                      Summary of my perl5 (revision 5.0 version 8 subversion 3) configuration:
                      Platform:
                      osname=hpux, osvers=11.11, archname=PA-RISC2.0-thread-multi-LP64
                      uname='hp-ux loire b.11.11 u 9000800 1756907651 unlimited-user license '
                      config_args='-A prepend:libswanted=cl pthread -Accflags=+Z -Dusethreads
                      -Duse64bitall -Duse64bitint -Dprefix=/opt/perl583'
                      hint=recommended, useposix=true, d_sigaction=define
                      usethreads=define use5005threads=undef useithreads=define
                      usemultiplicity=define
                      useperlio=define d_sfio=undef uselargefiles=define usesocks=undef
                      use64bitint=define use64bitall=define uselongdouble=undef
                      usemymalloc=n, bincompat5005=undef
                      Compiler:
                      cc='cc', ccflags =' -D_POSIX_C_SOURCE=199506L -D_REENTRANT -Ae
                      -D_HPUX_SOURCE -Wl,+vnocompatwarnings +DD64 +Z -I/usr/local/include
                      -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 ',
                      optimize='+O2 +Onolimit',
                      cppflags='-Aa -D__STDC_EXT__ -D_HPUX_SOURCE -D_POSIX_C_SOURCE=199506L
                      -D_REENTRANT -Ae -D_HPUX_SOURCE -Wl,+vnocompatwarnings +DD64 +Z
                      -I/usr/local/include'
                      ccversion='B.11.11.04', gccversion='', gccosandvers=''
                      intsize=4, longsize=8, ptrsize=8, doublesize=8, byteorder=87654321
                      d_longlong=define, longlongsize=8, d_longdbl=define, longdblsize=16
                      ivtype='long', ivsize=8, nvtype='double', nvsize=8, Off_t='off_t', lseeksize=8
                      alignbytes=8, prototype=define
                      Linker and Libraries:
                      ld='/usr/bin/ld', ldflags =' +DD64 -L/usr/local/lib -L/lib/pa20_64'
                      libpth=/usr/local/lib /lib/pa20_64 /lib /usr/lib /usr/ccs/lib
                      libs=-lcl -lpthread -lnsl -lnm -ldl -ldld -lm -lsec -lc
                      perllibs=-lcl -lpthread -lnsl -lnm -ldl -ldld -lm -lsec -lc
                      libc=/lib/pa20_64/libc.sl, so=sl, useshrplib=false, libperl=libperl.a
                      gnulibc_version=''
                      Dynamic Linking:
                      dlsrc=dl_hpux.xs, dlext=sl, d_dlsymun=undef, ccdlflags='-Wl,-E
                      -Wl,-B,deferred '
                      cccdlflags='+Z', lddlflags='-b +vnocompatwarnings -L/usr/local/lib
                      -L/lib/pa20_64'


                      > HP is migrating folks away from shl_xxx api to the dl_xxx api, but they
                      > have done a lousy job on consistency in hpux-11/32 bit. With their 11i
                      > 64 bit support they have been much more consistent, and practically
                      > scream for users to move to dl_xxx. This is why I wanted Olivier to try
                      > backing out that patch that picks up shl_ over dl_.

                      Well, I hope Olivier will be able to do that testing.

                      __________________________________________________________________
                      Stas Bekman JAm_pH ------> Just Another mod_perl Hacker
                      http://stason.org/ mod_perl Guide ---> http://perl.apache.org
                      mailto:stas@... http://use.perl.org http://apacheweek.com
                      http://modperlbook.org http://apache.org http://ticketmaster.com

                      --
                      Report problems: http://perl.apache.org/bugs/
                      Mail list info: http://perl.apache.org/maillist/modperl.html
                      List etiquette: http://perl.apache.org/maillist/email-etiquette.html
                    • olivier.blanc@dgi.finances.gouv.fr
                      Hi all, Sorry, I had a miss reading of the result. I was too excited when all compilation pass thru and when I saw that apache server started sucessfully...
                      Message 10 of 17 , May 3, 2004
                      • 0 Attachment

                        Hi all,

                        Sorry, I had a miss reading of the result. I was too excited when all compilation pass thru and when I saw that apache server started sucessfully...
                        All tests failure reported below are due to this  Bucket.sl problem.

                        How can I figure out what is going on, and How can I try to fix the problem ?

                        BTW, I had to modify a bit the "config_vars.mk" file from Apache.
                        Also, during the Makefile.PL step, I had to modify the ldflags variable to remove the "+DD64" flag that the linker doesn't like at all.


                        I'll post all that when erverytings will work properly.


                        Thanks for help,

                        Olivier
                        ----------------
                        Olivier Blanc
                        Bureau SI6 / DFPRO / ET
                        Ministère des Finances
                        Tel.: +33(0)240 128 909
                        mailto:olivier.blanc@...



                        Stas Bekman <stas@...>

                        30/04/2004 19:29

                               
                                Pour :        
                                cc :        olivier.blanc@..., modperl@..., "Philippe M. Chiasson" <gozer@...>
                                Objet :        Re: mp2 Apache2.0.49 on HPUX11i : mod_perl does not load in Apache



                        [Olivier, please remember to keep the messages on the list. Thanks]

                        So your error log shows that there are quite a few problem. How is it possible
                        that you did get 'make test' to pass. Or did it?

                        =======================================
                        # Failed test 6 in /var/tmp/apache_perl/modperl-2.0/t/response/TestAPI/module.pm
                         at line 87
                        /usr/lib/pa20_64/dld.sl: Unsatisfied code symbol 'modperl_bucket_sv_create' in
                        load module '/var/tmp/apache_perl/modperl-2.0/blib/arch/auto/APR/Bucket/Bucket.sl
                        '.
                        [Fri Apr 30 17:51:06 2004] [notice] child pid 5003 exit signal Illegal
                        instruction (4)
                        # Failed test 5 in /var/tmp/apache_perl/modperl-2.0/t/response/TestAPR/netlib.pm
                         at line 46

                        [Fri Apr 30 17:53:38 2004] [error] [client 0.0.0.0] Can't dup STDIN: Bad file
                        number at /var/tmp/apache_perl/modperl-2.0/t/response/TestModperl/io_with_closed_s
                        tds.pm line 24.\n

                        # Failed test 8 in
                        /var/tmp/apache_perl/modperl-2.0/t/response/TestModperl/setupenv.pm at line 35
                        # Failed test 22 in
                        /var/tmp/apache_perl/modperl-2.0/t/response/TestModperl/setupenv.pm at line 115
                        # Failed test 29 in
                        /var/tmp/apache_perl/modperl-2.0/t/response/TestModperl/setupenv.pm at line 35
                        fail #2
                        # Failed test 36 in
                        /var/tmp/apache_perl/modperl-2.0/t/response/TestModperl/setupenv.pm at line 35
                        fail #3
                        # Failed test 50 in
                        /var/tmp/apache_perl/modperl-2.0/t/response/TestModperl/setupenv.pm at line 35
                        fail #4
                        # Failed test 57 in
                        /var/tmp/apache_perl/modperl-2.0/t/response/TestModperl/setupenv.pm at line
                        115 fail #2
                        =================================

                        So you have a bunch of these errors:

                        /usr/lib/pa20_64/dld.sl: Unsatisfied code symbol 'modperl_bucket_sv_create' in

                        Is nm(1) working on your platform? If so, please try:

                        nm /path/to/your/httpd | grep modperl_bucket_sv_create


                        __________________________________________________________________
                        Stas Bekman            JAm_pH ------> Just Another mod_perl Hacker
                        http://stason.org/     mod_perl Guide ---> http://perl.apache.org
                        mailto:stas@... http://use.perl.org http://apacheweek.com
                        http://modperlbook.org http://apache.org   http://ticketmaster.com

                        --
                        Report problems: http://perl.apache.org/bugs/
                        Mail list info: http://perl.apache.org/maillist/modperl.html
                        List etiquette: http://perl.apache.org/maillist/email-etiquette.html



                      • Stas Bekman
                        ... So you have a bunch of these errors: /usr/lib/pa20_64/dld.sl: Unsatisfied code symbol modperl_bucket_sv_create in Is nm(1) working on your platform? If
                        Message 11 of 17 , May 3, 2004
                        • 0 Attachment
                          olivier.blanc@... wrote:
                          > Hi all,
                          >
                          > Sorry, I had a miss reading of the result. I was too excited when all
                          > compilation pass thru and when I saw that apache server started
                          > sucessfully...
                          > All tests failure reported below are due to this Bucket.sl problem.
                          >
                          > How can I figure out what is going on, and How can I try to fix the
                          > problem ?

                          Please re-read my reply to you, it includes:

                          -----------------------
                          So you have a bunch of these errors:

                          /usr/lib/pa20_64/dld.sl: Unsatisfied code symbol 'modperl_bucket_sv_create' in

                          Is nm(1) working on your platform? If so, please try:

                          nm /path/to/your/httpd | grep modperl_bucket_sv_create
                          -----------------------

                          > BTW, I had to modify a bit the "config_vars.mk" file from Apache.
                          > Also, during the Makefile.PL step, I had to modify the ldflags variable to
                          > remove the "+DD64" flag that the linker doesn't like at all.

                          That doesn't sounds right. You need to build perl and apache/modperl with the
                          same compiler. Your perl was compiled with "+DD64", so your compiler must like
                          it. If it doesn't rebuild perl with the compiler you use to compile
                          apache/modperl.

                          __________________________________________________________________
                          Stas Bekman JAm_pH ------> Just Another mod_perl Hacker
                          http://stason.org/ mod_perl Guide ---> http://perl.apache.org
                          mailto:stas@... http://use.perl.org http://apacheweek.com
                          http://modperlbook.org http://apache.org http://ticketmaster.com

                          --
                          Report problems: http://perl.apache.org/bugs/
                          Mail list info: http://perl.apache.org/maillist/modperl.html
                          List etiquette: http://perl.apache.org/maillist/email-etiquette.html
                        • Stas Bekman
                          [Olivier, please keep things on the list. Thanks] ... Show us the linking output when it creates mod_perl.a. After the build is complete on my machine I d do:
                          Message 12 of 17 , May 4, 2004
                          • 0 Attachment
                            [Olivier, please keep things on the list. Thanks]

                            >>So you have a bunch of these errors:
                            >>/usr/lib/pa20_64/dld.sl: Unsatisfied code symbol
                            >
                            > 'modperl_bucket_sv_create' in
                            >
                            >>Is nm(1) working on your platform? If so, please try:
                            >>nm /path/to/your/httpd | grep modperl_bucket_sv_create
                            >
                            >
                            > It does not find modperl_bucket_sv_create in httpd file.

                            Show us the linking output when it creates mod_perl.a. After the build is
                            complete on my machine I'd do:

                            % rm src/modules/perl/mod_perl.a

                            % make
                            cd "src/modules/perl" && make -f Makefile.modperl
                            make[1]: Entering directory `/home/stas/apache.org/mp2-xcpt/src/modules/perl'
                            rm -f mod_perl.a
                            ar crv mod_perl.a mod_perl.o modperl_interp.o modperl_tipool.o modperl_log.o
                            modperl_config.o modperl_cmd.o modperl_options.o modperl_callback.o
                            modperl_handler.o modperl_gtop.o modperl_util.o modperl_io.o
                            modperl_io_apache.o modperl_filter.o modperl_bucket.o modperl_mgv.o
                            modperl_pcw.o modperl_global.o modperl_env.o modperl_cgi.o modperl_perl.o
                            modperl_perl_global.o modperl_perl_pp.o modperl_sys.o modperl_module.o
                            modperl_svptr_table.o modperl_const.o modperl_constants.o
                            modperl_apache_compat.o modperl_error.o modperl_hooks.o modperl_directives.o
                            modperl_flags.o modperl_xsinit.o
                            a - mod_perl.o
                            a - modperl_interp.o
                            a - modperl_tipool.o
                            a - modperl_log.o
                            a - modperl_config.o
                            a - modperl_cmd.o
                            a - modperl_options.o
                            a - modperl_callback.o
                            a - modperl_handler.o
                            a - modperl_gtop.o
                            a - modperl_util.o
                            a - modperl_io.o
                            a - modperl_io_apache.o
                            a - modperl_filter.o
                            a - modperl_bucket.o
                            a - modperl_mgv.o
                            a - modperl_pcw.o
                            a - modperl_global.o
                            a - modperl_env.o
                            a - modperl_cgi.o
                            a - modperl_perl.o
                            a - modperl_perl_global.o
                            a - modperl_perl_pp.o
                            a - modperl_sys.o
                            a - modperl_module.o
                            a - modperl_svptr_table.o
                            a - modperl_const.o
                            a - modperl_constants.o
                            a - modperl_apache_compat.o
                            a - modperl_error.o
                            a - modperl_hooks.o
                            a - modperl_directives.o
                            a - modperl_flags.o
                            a - modperl_xsinit.o
                            : mod_perl.a

                            So you are after this line:
                            a - modperl_bucket.o

                            Checking:

                            % nm mod_perl.a | grep modperl_bucket_sv_create
                            000001e2 T modperl_bucket_sv_create

                            So as you can see it has this symbol. You can check the original file as well:

                            % nm modperl_bucket.o | grep modperl_bucket_sv_create
                            000001e2 T modperl_bucket_sv_create

                            Can you please run those commands for us?

                            [the rest in another email, to keep issues separate]

                            --
                            __________________________________________________________________
                            Stas Bekman JAm_pH ------> Just Another mod_perl Hacker
                            http://stason.org/ mod_perl Guide ---> http://perl.apache.org
                            mailto:stas@... http://use.perl.org http://apacheweek.com
                            http://modperlbook.org http://apache.org http://ticketmaster.com

                            --
                            Report problems: http://perl.apache.org/bugs/
                            Mail list info: http://perl.apache.org/maillist/modperl.html
                            List etiquette: http://perl.apache.org/maillist/email-etiquette.html
                          • olivier.blanc@dgi.finances.gouv.fr
                            Stas Bekman 04/05/2004 19:25 Pour : olivier.blanc@dgi.finances.gouv.fr, mod_perl Mailing List cc : Objet : Re: mp2
                            Message 13 of 17 , May 5, 2004
                            • 0 Attachment
                              Stas Bekman <stas@...>

                              04/05/2004 19:25

                                     
                                      Pour :        olivier.blanc@..., mod_perl Mailing List <modperl@...>
                                      cc :        
                                      Objet :        Re: mp2 Apache2.0.49 on HPUX11i : mod_perl does not load in Apache



                              >>>So you have a bunch of these errors:
                              >>>/usr/lib/pa20_64/dld.sl: Unsatisfied code symbol
                              >>
                              >> 'modperl_bucket_sv_create' in
                              >>
                              >>>Is nm(1) working on your platform? If so, please try:
                              >>>nm /path/to/your/httpd | grep modperl_bucket_sv_create
                              >>
                              >>
                              >> It does not find modperl_bucket_sv_create in httpd file.

                              >Show us the linking output when it creates mod_perl.a. After the build is
                              >complete on my machine I'd do:

                              >% rm src/modules/perl/mod_perl.a

                              >% make
                              >cd "src/modules/perl" && make -f Makefile.modperl
                              >make[1]: Entering directory `/home/stas/apache.org/mp2-xcpt/src/modules/perl'
                              >rm -f mod_perl.a
                              >ar crv mod_perl.a mod_perl.o modperl_interp.o modperl_tipool.o modperl_log.o
                              >modperl_config.o modperl_cmd.o modperl_options.o modperl_callback.o
                              >modperl_handler.o modperl_gtop.o modperl_util.o modperl_io.o
                              >modperl_io_apache.o modperl_filter.o modperl_bucket.o modperl_mgv.o
                              >modperl_pcw.o modperl_global.o modperl_env.o modperl_cgi.o modperl_perl.o
                              >modperl_perl_global.o modperl_perl_pp.o modperl_sys.o modperl_module.o
                              >modperl_svptr_table.o modperl_const.o modperl_constants.o
                              >modperl_apache_compat.o modperl_error.o modperl_hooks.o modperl_directives.o
                              >modperl_flags.o modperl_xsinit.o
                              ...
                              >So you are after this line:
                              >a - modperl_bucket.o

                              Ok it is present

                              >Checking:

                              >% nm mod_perl.a | grep modperl_bucket_sv_create
                              >000001e2 T modperl_bucket_sv_create*

                              Here is the result :
                              [37]     |                     0|      92|FUNC |GLOB |0|   .text|modperl_bucket_sv_create

                              >So as you can see it has this symbol. You can check the original file as well:

                              >% nm modperl_bucket.o | grep modperl_bucket_sv_create
                              >000001e2 T modperl_bucket_sv_create
                              Here is the result :

                              [37]     |                     0|      92|FUNC |GLOB |0|   .text|modperl_bucket_sv_create

                              Olivier

                            • Stas Bekman
                              ... Sorry, I m not familiar with nm s output on your platform. What does 0 mean? That it s unresolved? What do you get for other symbols (just to compare),
                              Message 14 of 17 , May 5, 2004
                              • 0 Attachment
                                olivier.blanc@... wrote:

                                >>So you are after this line:
                                >>a - modperl_bucket.o
                                >
                                >
                                > Ok it is present
                                >
                                >
                                >>Checking:
                                >
                                >
                                >>% nm mod_perl.a | grep modperl_bucket_sv_create
                                >>000001e2 T modperl_bucket_sv_create*
                                >
                                > Here is the result :
                                > [37] | 0| 92|FUNC |GLOB |0|
                                > .text|modperl_bucket_sv_create
                                >
                                >
                                >>So as you can see it has this symbol. You can check the original file as
                                >
                                > well:
                                >
                                >
                                >>% nm modperl_bucket.o | grep modperl_bucket_sv_create
                                >>000001e2 T modperl_bucket_sv_create
                                >
                                > Here is the result :
                                > [37] | 0| 92|FUNC |GLOB |0|
                                > .text|modperl_bucket_sv_create

                                Sorry, I'm not familiar with nm's output on your platform. What does 0 mean?
                                That it's unresolved? What do you get for other symbols (just to compare), e.g.

                                nm mod_perl.a | grep modperl_callback

                                __________________________________________________________________
                                Stas Bekman JAm_pH ------> Just Another mod_perl Hacker
                                http://stason.org/ mod_perl Guide ---> http://perl.apache.org
                                mailto:stas@... http://use.perl.org http://apacheweek.com
                                http://modperlbook.org http://apache.org http://ticketmaster.com

                                --
                                Report problems: http://perl.apache.org/bugs/
                                Mail list info: http://perl.apache.org/maillist/modperl.html
                                List etiquette: http://perl.apache.org/maillist/email-etiquette.html
                              • olivier.blanc@dgi.finances.gouv.fr
                                Stas Bekman 05/05/2004 19:56 Pour : olivier.blanc@dgi.finances.gouv.fr cc : mod_perl Mailing List Objet : Re:
                                Message 15 of 17 , May 6, 2004
                                • 0 Attachment
                                  Stas Bekman <stas@...>

                                  05/05/2004 19:56

                                         
                                          Pour :        olivier.blanc@...
                                          cc :        mod_perl Mailing List <modperl@...>
                                          Objet :        Re: mp2 Apache2.0.49 on HPUX11i : mod_perl does not load in Apache



                                  >>>% nm modperl_bucket.o | grep modperl_bucket_sv_create
                                  >>>000001e2 T modperl_bucket_sv_create
                                  >>
                                  >> Here is the result :
                                  >> [37]     |                     0|      92|FUNC |GLOB |0|  .text|modperl_bucket_sv_create

                                  >Sorry, I'm not familiar with nm's output on your platform. What does 0 mean?
                                  >That it's unresolved? What do you get for other symbols (just to compare), e.g.

                                  >  nm mod_perl.a | grep modperl_callback


                                  [root@w44h]:/var/tmp/apache_perl/modperl-2.0/src/modules/perl>  nm mod_perl.a | grep modperl_callback
                                  [197]    |                     0|       0|FUNC |GLOB |0|   UNDEF|modperl_callback_per_dir
                                  [117]    |                     0|       0|FUNC |GLOB |0|   UNDEF|modperl_callback_process
                                  [59]     |                     0|       0|FUNC |GLOB |0|   UNDEF|modperl_callback_per_dir
                                  [94]     |                     0|       0|FUNC |GLOB |0|   UNDEF|modperl_callback
                                  Symbols from mod_perl.a[modperl_callback.o]:
                                  [11]     |                     0|       8|OBJT |LOCAL|0| .rodata|S$158$modperl_callback
                                  [32]     |                     0|    1852|FUNC |GLOB |0|   .text|modperl_callback
                                  [84]     |                     0|      68|FUNC |GLOB |0|   .text|modperl_callback_connection
                                  [87]     |                     0|      64|FUNC |GLOB |0|   .text|modperl_callback_files
                                  [82]     |                     0|      68|FUNC |GLOB |0|   .text|modperl_callback_per_dir
                                  [83]     |                     0|      68|FUNC |GLOB |0|   .text|modperl_callback_per_srv
                                  [85]     |                     0|      68|FUNC |GLOB |0|   .text|modperl_callback_pre_connection
                                  [86]     |                     0|      68|FUNC |GLOB |0|   .text|modperl_callback_process
                                  [64]     |                     0|    1316|FUNC |GLOB |0|   .text|modperl_callback_run_handlers
                                  [66]     |                     0|       0|FUNC |GLOB |0|   UNDEF|modperl_callback
                                  [38]     |                     0|       0|FUNC |GLOB |0|   UNDEF|modperl_callback_connection
                                  [56]     |                     0|       0|FUNC |GLOB |0|   UNDEF|modperl_callback_files
                                  [44]     |                     0|       0|FUNC |GLOB |0|   UNDEF|modperl_callback_per_dir
                                  [52]     |                     0|       0|FUNC |GLOB |0|   UNDEF|modperl_callback_per_srv
                                  [42]     |                     0|       0|FUNC |GLOB |0|   UNDEF|modperl_callback_pre_connection
                                  [40]     |                     0|       0|FUNC |GLOB |0|   UNDEF|modperl_callback_process

                                  Here is a part of man nm
                                      Default Output Format - 64 bit
                                        If the default (neither the -p nor the -P option) output format is
                                        specified, each symbol has the following columns, separated by
                                        vertical bars (|).  The default for numbers is decimal (-d or -t d).
                                   
                                        If decimal:
                                   
                                             "[%u]%s|%22llu|%8u|%s|%s|%1d|%s|%s",
                                                index, value, size, type, bind, O, shndx, name
                                   
                                        If octal:
                                   
                                             "[%u]%s|%022llo|%010o|%s|%s|%1o|%s|%s",
                                                index, value, size, type, bind, O, shndx, name
                                   
                                        If hexadecimal:
                                   
                                             "[%u]%s|0x%016llx|0x%08x|%s|%s|%1x|%s|%s",
                                                index, value, size, type, bind, O, shndx, name
                                   
                                        The descriptions are explained below:
                                   
                                             name           The name of the symbol.
                                   
                                             value          Its value expressed as an offset or an address
                                                            depending on its storage class.
                                   
                                             scope          The scope of the symbol (external, sdef, static,
                                                            or undefined).  The sdef scope indicates an
                                                            external symbol that is flagged as a secondary
                                                            definition.
                                             type           The type of the symbol (absolute, arg_ext, code,
                                                            data, entry, milli_ext, millicode, module, null,
                                                            oct_dis, plabel, pri_prog, sec_prog, storage,
                                                            stub, sym_ext, tstor).
                                   
                                             subspace       The subspace to which the symbol belongs.
                                   
                                             bind           Specifies the symbol binding type (local, weak,
                                                            global).
                                   
                                             O              This field is used for files that have large
                                                            section tables (>65K sections).  For smaller
                                                            files, the value of this field is 0.
                                   
                                             Shndx          Identifies the index of the section that the
                                                            symbol belongs to.
                                   
                                             Identifies the index of the symbol in the symbol table.


                                  Olivier
                                • Stas Bekman
                                  TimeZones are not fun, hey :) ... Thanks for the manpage quoting, so now we know that the symbol is seen from mod_perl.a. Next mod_perl.a gets linked to httpd.
                                  Message 16 of 17 , May 6, 2004
                                  • 0 Attachment
                                    TimeZones are not fun, hey :)

                                    olivier.blanc@... wrote:

                                    >>>Here is the result :
                                    >>>[37] | 0| 92|FUNC |GLOB |0|
                                    >
                                    > .text|modperl_bucket_sv_create

                                    Thanks for the manpage quoting, so now we know that the symbol is seen from
                                    mod_perl.a. Next mod_perl.a gets linked to httpd. Earlier you said that you
                                    can't see that symbol in httpd. May be it's because httpd gets stripped of its
                                    symbols? Try to build httpd with --enable-maintainer-mode (just for the
                                    debugging). What I suspect is that httpd doesn't link mod_perl.a at all and
                                    that's why you get this problem. the modperl_bucket_sv_create probably just
                                    happens to be the first symbol that is attempted to be used.

                                    BTW, Philippe has a new version of the static build patch:
                                    http://marc.theaimsgroup.com/?l=apache-modperl-dev&m=108386907921853&w=2


                                    --
                                    __________________________________________________________________
                                    Stas Bekman JAm_pH ------> Just Another mod_perl Hacker
                                    http://stason.org/ mod_perl Guide ---> http://perl.apache.org
                                    mailto:stas@... http://use.perl.org http://apacheweek.com
                                    http://modperlbook.org http://apache.org http://ticketmaster.com

                                    --
                                    Report problems: http://perl.apache.org/bugs/
                                    Mail list info: http://perl.apache.org/maillist/modperl.html
                                    List etiquette: http://perl.apache.org/maillist/email-etiquette.html
                                  • Stas Bekman
                                    ... Please scratch that last part, as it s obviously wrong, since once you linked APR/Bucket.so statically it did work fine.
                                    Message 17 of 17 , May 6, 2004
                                    • 0 Attachment
                                      Stas Bekman wrote:
                                      > What I suspect is
                                      > that httpd doesn't link mod_perl.a at all and that's why you get this
                                      > problem. the modperl_bucket_sv_create probably just happens to be the
                                      > first symbol that is attempted to be used.

                                      Please scratch that last part, as it's obviously wrong, since once you linked
                                      APR/Bucket.so statically it did work fine.
                                      __________________________________________________________________
                                      Stas Bekman JAm_pH ------> Just Another mod_perl Hacker
                                      http://stason.org/ mod_perl Guide ---> http://perl.apache.org
                                      mailto:stas@... http://use.perl.org http://apacheweek.com
                                      http://modperlbook.org http://apache.org http://ticketmaster.com

                                      --
                                      Report problems: http://perl.apache.org/bugs/
                                      Mail list info: http://perl.apache.org/maillist/modperl.html
                                      List etiquette: http://perl.apache.org/maillist/email-etiquette.html
                                    Your message has been successfully submitted and would be delivered to recipients shortly.