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

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

Expand Messages
  • 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 1 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 2 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 3 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 4 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 5 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 6 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 7 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 8 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.