64-bit EPIC and some modules

Collapse
This topic is closed.
X
X
 
  • Time
  • Show
Clear All
new posts
  • Christos TZOTZIOY Georgiou

    64-bit EPIC and some modules

    I got my hands on a Itanium2 machine[1], and gcc builds 64-bit
    executables by default. (sys.maxint = 922337203685477 5807). _tkinter,
    audioop and imageop didn't compile at first, and I believe it's a
    problem of configure.

    I changed Modules/Setup and removed the hashes from the relevant
    modules, and a recompilation worked fine; so did running
    test.test_audio op and test.test_image op.
    Things went well for the _tkinter extension too, after editing
    Modules/Setup, with the pre-installed 8.3 versions of tcl and tk.

    The problem is that I am at a loss with the configure mechanism, and I
    can't figure why audioop, imageop and _tkinter were not configured in
    from the beginning (it's a linux system, after all; libraries and
    includes are in the standard places, ie /usr/lib and /usr/include). I
    am ATM browsing old posts in Google groups searching for pieces of a
    'python-configure-how-to', but any hints would be appreciated.

    TIA

    [1] SGI Altix 3000, 4*900MHz

    Some info:

    Python 2.4a0 (#1, Sep 24 2003, 17:33:40)
    [GCC 2.96 20000731 (Red Hat Linux 7.2 2.96-116.7.2)] on linux2
    Type "help", "copyright" , "credits" or "license" for more information.[color=blue][color=green][color=darkred]
    >>> import platform
    >>> platform.platfo rm()[/color][/color][/color]
    'Linux-2.4.20-sgi220rp0306262 2_10017-ia64-with-redhat-2.1-Derry'[color=blue][color=green][color=darkred]
    >>> platform.uname( )[/color][/color][/color]
    ('Linux', 'altix3000.sil-tec.gr', '2.4.20-sgi220rp0306262 2_10017', '#1
    SMP Thu Jun 26 22:04:03 PDT 2003', 'ia64', '')[color=blue][color=green][color=darkred]
    >>> import test.pystone
    >>> test.pystone.ma in()[/color][/color][/color]
    Pystone(1.1) time for 50000 passes = 3.6356
    This machine benchmarks at 13752.9 pystones/second

    # I didn't install the Intel compilers yet to recompile python
    --
    TZOTZIOY, I speak England very best,
    Microsoft Security Alert: the Matrix began as open source.
  • Michael Hudson

    #2
    Re: 64-bit EPIC and some modules

    Christos "TZOTZIOY" Georgiou <tzot@sil-tec.gr> writes:
    [color=blue]
    > I got my hands on a Itanium2 machine[1], and gcc builds 64-bit
    > executables by default. (sys.maxint = 922337203685477 5807). _tkinter,
    > audioop and imageop didn't compile at first, and I believe it's a
    > problem of configure.
    >
    > I changed Modules/Setup and removed the hashes from the relevant
    > modules, and a recompilation worked fine; so did running
    > test.test_audio op and test.test_image op.
    > Things went well for the _tkinter extension too, after editing
    > Modules/Setup, with the pre-installed 8.3 versions of tcl and tk.
    >
    > The problem is that I am at a loss with the configure mechanism, and I
    > can't figure why audioop, imageop and _tkinter were not configured in
    > from the beginning (it's a linux system, after all; libraries and
    > includes are in the standard places, ie /usr/lib and /usr/include). I
    > am ATM browsing old posts in Google groups searching for pieces of a
    > 'python-configure-how-to', but any hints would be appreciated.[/color]

    I may be wrong, but I thought that audioop and imageop only work in a
    32 bit environment.

    Cheers,
    mwh

    --
    please realize that the Common Lisp community is more than 40
    years old. collectively, the community has already been where
    every clueless newbie will be going for the next three years.
    so relax, please. -- Erik Naggum, comp.lang.lisp

    Comment

    • Christos TZOTZIOY Georgiou

      #3
      Re: 64-bit EPIC and some modules

      On Wed, 24 Sep 2003 16:28:25 GMT, rumours say that Michael Hudson
      <mwh@python.net > might have written:
      [color=blue]
      >I may be wrong, but I thought that audioop and imageop only work in a
      >32 bit environment.[/color]

      I found an old post by Guido (1998) asking for testers in 64-bit
      environments; it seems that the work he did then (and perhaps some later
      work by him or others) gave fruit.

      I checked the source (of audioop at least), and there are some #ifdef
      code at the start of it, assuring the type used in calculations is 4
      bytes long.
      The tests ran fine! :)

      Guido's post:

      --
      TZOTZIOY, I speak England very best,
      Microsoft Security Alert: the Matrix began as open source.

      Comment

      • Michael Hudson

        #4
        Re: 64-bit EPIC and some modules

        Christos "TZOTZIOY" Georgiou <tzot@sil-tec.gr> writes:
        [color=blue]
        > On Wed, 24 Sep 2003 16:28:25 GMT, rumours say that Michael Hudson
        > <mwh@python.net > might have written:
        >[color=green]
        > >I may be wrong, but I thought that audioop and imageop only work in a
        > >32 bit environment.[/color]
        >
        > I found an old post by Guido (1998) asking for testers in 64-bit
        > environments; it seems that the work he did then (and perhaps some later
        > work by him or others) gave fruit.
        >
        > I checked the source (of audioop at least), and there are some #ifdef
        > code at the start of it, assuring the type used in calculations is 4
        > bytes long.
        > The tests ran fine! :)[/color]

        Oh, fine. You'll probably have to dig into setup.py to find why
        they're not building on itanium -- not having one, it's not the sort
        of thing I can really motivate myself about :-)

        Cheers,
        mwh
        PS: hp-ux/itanium appears to be utterly horked...

        --
        C is not clean -- the language has _many_ gotchas and traps, and
        although its semantics are _simple_ in some sense, it is not any
        cleaner than the assembly-language design it is based on.
        -- Erik Naggum, comp.lang.lisp

        Comment

        • Christos TZOTZIOY Georgiou

          #5
          Re: 64-bit EPIC and some modules

          On Thu, 25 Sep 2003 11:20:27 GMT, rumours say that Michael Hudson
          <mwh@python.net > might have written:
          [color=blue]
          >PS: hp-ux/itanium appears to be utterly horked...[/color]

          Thank God this is not a HP/UX then... presumably. See PS.

          PS: What is horked???
          --
          TZOTZIOY, I speak England very best,
          Microsoft Security Alert: the Matrix began as open source.

          Comment

          • Terry Reedy

            #6
            Re: 64-bit EPIC and some modules


            "Christos TZOTZIOY Georgiou" <tzot@sil-tec.gr> wrote in message
            news:89d6nv85qd rvegiehk25rpkpi rogvqspgi@4ax.c om...[color=blue]
            > On Thu, 25 Sep 2003 11:20:27 GMT, rumours say that Michael Hudson
            > <mwh@python.net > might have written:
            >[color=green]
            > >PS: hp-ux/itanium appears to be utterly horked...[/color]
            >
            > Thank God this is not a HP/UX then... presumably. See PS.
            >
            > PS: What is horked???[/color]

            In Diablo II, it means that a Barbarian has stood over the corpse and
            yelled a particular magical warcry to draw out any remaining potions
            or possessions.

            MH might have meant something else ;-)

            TJR


            Comment

            • Paul Boddie

              #7
              Re: 64-bit EPIC and some modules

              "Terry Reedy" <tjreedy@udel.e du> wrote in message news:<7dWcnajRG 6oi4-6iXTWJkA@comcas t.com>...[color=blue]
              > "Christos TZOTZIOY Georgiou" <tzot@sil-tec.gr> wrote in message
              > news:89d6nv85qd rvegiehk25rpkpi rogvqspgi@4ax.c om...[color=green]
              > > On Thu, 25 Sep 2003 11:20:27 GMT, rumours say that Michael Hudson
              > > <mwh@python.net > might have written:
              > >[color=darkred]
              > > >PS: hp-ux/itanium appears to be utterly horked...[/color]
              > >
              > > PS: What is horked???[/color]
              >
              > In Diablo II, it means that a Barbarian has stood over the corpse and
              > yelled a particular magical warcry to draw out any remaining potions
              > or possessions.
              >
              > MH might have meant something else ;-)[/color]

              Yes, MH presumably meant "Tux the Penguin" instead of "a Barbarian",
              "long-term viability" instead of "potions", and "market share" instead
              of "possession s". ;-)

              Paul

              Comment

              • Michael Hudson

                #8
                Re: 64-bit EPIC and some modules

                Christos "TZOTZIOY" Georgiou <tzot@sil-tec.gr> writes:
                [color=blue]
                > On Thu, 25 Sep 2003 11:20:27 GMT, rumours say that Michael Hudson
                > <mwh@python.net > might have written:
                >[color=green]
                > >PS: hp-ux/itanium appears to be utterly horked...[/color]
                >
                > Thank God this is not a HP/UX then... presumably. See PS.
                >
                > PS: What is horked???[/color]

                "broken". I tried to build 2.3.1 on the HP testdrive itanium/hp-ux
                machine, and the results were far from encouraging.

                Cheers,
                mwh

                --
                [2. More type system hacking --- text/plain; type-argh.diff]
                -- csr on sbcl-devel

                Comment

                • Martin v. Löwis

                  #9
                  Re: 64-bit EPIC and some modules

                  Christos "TZOTZIOY" Georgiou <tzot@sil-tec.gr> writes:
                  [color=blue]
                  > The problem is that I am at a loss with the configure mechanism, and I
                  > can't figure why audioop, imageop and _tkinter were not configured in
                  > from the beginning (it's a linux system, after all; libraries and
                  > includes are in the standard places, ie /usr/lib and /usr/include). I
                  > am ATM browsing old posts in Google groups searching for pieces of a
                  > 'python-configure-how-to', but any hints would be appreciated.[/color]

                  _tkinter built fine for me, with Python 2.3.1, on a Debian/ia64
                  system. If it was not built for you, most likely, you forgot to
                  install the header files.

                  audioop and imageop are not build because of this code in setup.py:

                  # Multimedia modules
                  # These don't work for 64-bit platforms!!!
                  # These represent audio samples or images as strings:

                  # Disabled on 64-bit platforms
                  if sys.maxint != 922337203685477 5807L:
                  # Operations on audio samples
                  exts.append( Extension('audi oop', ['audioop.c']) )
                  # Operations on images
                  exts.append( Extension('imag eop', ['imageop.c']) )
                  # Read SGI RGB image files (but coded portably)
                  exts.append( Extension('rgbi mg', ['rgbimgmodule.c ']) )

                  Regards,
                  Martin

                  Comment

                  • Christos TZOTZIOY Georgiou

                    #10
                    Re: 64-bit EPIC and some modules

                    On 27 Sep 2003 12:09:41 +0200, rumours say that martin@v.loewis .de
                    (Martin v. Löwis) might have written:
                    [color=blue]
                    >_tkinter built fine for me, with Python 2.3.1, on a Debian/ia64
                    >system. If it was not built for you, most likely, you forgot to
                    >install the header files.[/color]

                    The header files were there (/usr/lib/tcl), and that is why I managed to
                    compile just by uncommenting the lines in Modules/Setup. I didn't
                    install any -devel packages in the meanwhile.
                    I'll give it a shot again remotely when the machine reaches our client
                    (we must send it tomorrow).
                    [color=blue]
                    >audioop and imageop are not build because of this code in setup.py:
                    >
                    > # Multimedia modules
                    > # These don't work for 64-bit platforms!!!
                    > # These represent audio samples or images as strings:[/color]

                    Ah, thank you. Given that they worked fine for me[1] on ia64, I will
                    post a patch tomorrow afternoon which hopefully will be used when more
                    success reports on 64-bit machines come in.


                    [1] the tests ran, and I tried the following on a Windows python, a
                    32-bit Linux and the ia64 one side-by-side:

                    print audioop.max("he llo there!", 2)

                    and I got 29285 in all three of them
                    --
                    TZOTZIOY, I speak England very best,
                    Microsoft Security Alert: the Matrix began as open source.

                    Comment

                    • Martin v. Löwis

                      #11
                      Re: 64-bit EPIC and some modules

                      Christos "TZOTZIOY" Georgiou <tzot@sil-tec.gr> writes:
                      [color=blue][color=green]
                      > >_tkinter built fine for me, with Python 2.3.1, on a Debian/ia64
                      > >system. If it was not built for you, most likely, you forgot to
                      > >install the header files.[/color]
                      >
                      > The header files were there (/usr/lib/tcl)[/color]

                      Why are the header files in /usr/lib/tcl???? Which header files
                      specifically? If the header files where installed properly, they would
                      live in /usr/include, somewhere, either /usr/include/tcl.h, or
                      /usr/include/tcl84/tcl.h. setup.py would never look for header files
                      in /usr/lib.

                      Regards,
                      Martin

                      Comment

                      • Christos TZOTZIOY Georgiou

                        #12
                        Re: 64-bit EPIC and some modules

                        On 30 Sep 2003 23:32:48 +0200, rumours say that martin@v.loewis .de
                        (Martin v. Löwis) might have written:
                        [color=blue][color=green]
                        >> The header files were there (/usr/lib/tcl)[/color]
                        >
                        >Why are the header files in /usr/lib/tcl???? Which header files
                        >specifically ? If the header files where installed properly, they would
                        >live in /usr/include, somewhere, either /usr/include/tcl.h, or
                        >/usr/include/tcl84/tcl.h. setup.py would never look for header files
                        >in /usr/lib.[/color]

                        My mistake, I'm sorry (half a sentence); the header files are
                        /usr/include/tcl*.h, and the libs are in /usr/lib/tcl8.3 .
                        --
                        TZOTZIOY, I speak England very best,
                        Ils sont fous ces Redmontains! --Harddix

                        Comment

                        Working...