64-bit EPIC and some modules

  • Thread starter Christos TZOTZIOY Georgiou
  • Start date
C

Christos TZOTZIOY Georgiou

I got my hands on a Itanium2 machine[1], and gcc builds 64-bit
executables by default. (sys.maxint = 9223372036854775807). _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_audioop and test.test_imageop.
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.('Linux', 'altix3000.sil-tec.gr', '2.4.20-sgi220rp03062622_10017', '#1
SMP Thu Jun 26 22:04:03 PDT 2003', 'ia64', '')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
 
M

Michael Hudson

Christos "TZOTZIOY" Georgiou said:
I got my hands on a Itanium2 machine[1], and gcc builds 64-bit
executables by default. (sys.maxint = 9223372036854775807). _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_audioop and test.test_imageop.
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.

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

Cheers,
mwh
 
C

Christos TZOTZIOY Georgiou

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

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:
http://groups.google.com/[email protected]
 
M

Michael Hudson

Christos "TZOTZIOY" Georgiou said:
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! :)

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...
 
T

Terry Reedy

Christos TZOTZIOY Georgiou said:
Thank God this is not a HP/UX then... presumably. See PS.

PS: What is horked???

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
 
P

Paul Boddie

Terry Reedy said:
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 ;-)

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

Paul
 
M

Michael Hudson

Christos "TZOTZIOY" Georgiou said:
Thank God this is not a HP/UX then... presumably. See PS.

PS: What is horked???

"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
 
M

Martin v. =?iso-8859-15?q?L=F6wis?=

Christos "TZOTZIOY" Georgiou said:
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.

_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 != 9223372036854775807L:
# Operations on audio samples
exts.append( Extension('audioop', ['audioop.c']) )
# Operations on images
exts.append( Extension('imageop', ['imageop.c']) )
# Read SGI RGB image files (but coded portably)
exts.append( Extension('rgbimg', ['rgbimgmodule.c']) )

Regards,
Martin
 
C

Christos TZOTZIOY Georgiou

_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.

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).
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:

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("hello there!", 2)

and I got 29285 in all three of them
 
M

Martin v. =?iso-8859-15?q?L=F6wis?=

Christos "TZOTZIOY" Georgiou said:
The header files were there (/usr/lib/tcl)

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
 
C

Christos TZOTZIOY Georgiou

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.

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 .
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

No members online now.

Forum statistics

Threads
473,768
Messages
2,569,574
Members
45,048
Latest member
verona

Latest Threads

Top