From: Todd M. <jm...@st...> - 2003-03-18 17:24:58
|
That's great to hear! Incidentally, you should probably also set LP64 to 1. That asserts that a Python integer (a C long) is 64-bits and makes the default array integer type Int64 rather than Int32. I don't know anything about SGI, but you can determine if LP64 is appropriate by looking at sys.maxint: 2-billionish is 32-bit, 9-gazillionish is 64-bit. Todd Francesc Alted wrote: >A Dimarts 18 Març 2003 16:47, Todd Miller va escriure: > >>It may be a fairly simple matter of an unsupported platform; I don't >>have access to the SGI machine you're dealing with. The default block >>in numarray's setup.py compiles for 32-bit without support for UInt64. >> Add a case for >>SGI and you may be done. If so, please send a patch. >> > >I see. I'm attaching the patch for IRIX 6.5 (IRIX64 nut 6.5 07121149 IP27): > >--- setup.py.orig Tue Mar 18 17:24:40 2003 >+++ setup.py.irix Tue Mar 18 17:42:37 2003 >@@ -32,6 +32,8 @@ > if sys.platform == "osf1V5": > EXTRA_COMPILE_ARGS.extend(["-ieee"]) > LP64, HAS_UINT64, HAS_FLOAT128 = 1, 1, 1 >+elif sys.platform == "irix646": >+ LP64, HAS_UINT64, HAS_FLOAT128 = 0, 1, 0 > elif sys.platform == "linux2": > LP64, HAS_UINT64, HAS_FLOAT128 = 0, 1, 0 > elif sys.platform == "sunos5": > >I've only set the UInt64 support because I don't know if this platform >supports floats of 128 bits and neither what LP64 exactly means. > >With that, numarray supports UInt64 arrays on IRIX perfectly: > >nut 435$ python >Python 2.2.2 (#2, Nov 19 2002, 18:46:18) >[GCC 2.95.2 19991024 (release)] on irix646 >Type "help", "copyright", "credits" or "license" for more information. > >>>>import numarray >>>>numarray.ones((3,), numarray.UInt64) >>>> >array([1, 1, 1], type=UInt64) > >>>>^D >>>> > >Thanks for the pointer, > |