Mailing-List: contact cygwin-help AT cygwin DOT com; run by ezmlm List-Subscribe: List-Archive: List-Post: List-Help: , Sender: cygwin-owner AT cygwin DOT com Mail-Followup-To: cygwin AT cygwin DOT com Delivered-To: mailing list cygwin AT cygwin DOT com To: numpy-discussion AT lists DOT sourceforge DOT net, cygwin AT cygwin DOT com Subject: numarray on Cygwin User-Agent: XEmacs/Gnus X-Attribution: Jochen X-Face: -%Z4EZ6iY'4m:wiK:!v Organization: University of North Carolina Date: 06 May 2002 18:36:58 -0400 Message-ID: Lines: 47 MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="=-=-=" I am trying to run numarray on Cygwin. (Where Numeric seems to work fine.) In order to compile it I had to change the use of round to rint, as Cygwin's C library (newlib) doesn't have round. The patch is attached. When I use it I don't get far, though: ,---- | > python | Python 2.2 (#1, Dec 31 2001, 15:21:18) | [GCC 2.95.3-5 (cygwin special)] on cygwin | Type "help", "copyright", "credits" or "license" for more information. | >>> import numarray as na | >>> x = na.array([1.0, 2.0]) | >>> x | Traceback (most recent call last): | File "", line 1, in ? | File "/usr/lib/python2.2/site-packages/numarray/numarray.py", line 591, in __repr__ | MAX_LINE_WIDTH, PRECISION, SUPPRESS_SMALL, ', ', 1) | File "/usr/lib/python2.2/site-packages/numarray/arrayprint.py", line 86, in array2string | format, item_length = _floatFormat(data, precision, suppress_small) | File "/usr/lib/python2.2/site-packages/numarray/arrayprint.py", line 140, in _floatFormat | non_zero = numarray.abs(numarray.compress(numarray.not_equal(data, 0), data)) | File "/usr/lib/python2.2/site-packages/numarray/ufunc.py", line 474, in __call__ | cfunc, ufargs, scalar) | File "/usr/lib/python2.2/site-packages/numarray/ufunc.py", line 312, in _doit | apply(cfunc, ufargs) | TypeError: 'PyCObject' object is not callable | >>> `---- If I print out the type of cfunc down in _doit, I get (the expected) ,---- | `---- Any ideas, probably some hints how to proceed? Greetings, Jochen -- University of North Carolina phone: +1-919-962-4403 Department of Chemistry phone: +1-919-962-1579 Venable Hall CB#3290 (Kenan C148) fax: +1-919-843-6041 Chapel Hill, NC 27599, USA GnuPG key: 44BCCD8E --=-=-= Content-Type: text/x-patch; charset=iso-8859-1 Content-Disposition: attachment; filename=numarray.diff Content-Transfer-Encoding: 8bit ? Lib/ChangeLog ? Lib/numinclude.py Index: Include/numarray/ChangeLog =================================================================== RCS file: /cvsroot/numpy/numarray/Include/numarray/ChangeLog,v retrieving revision 1.1 diff -u -r1.1 ChangeLog --- Include/numarray/ChangeLog 22 Apr 2002 20:33:16 -0000 1.1 +++ Include/numarray/ChangeLog 6 May 2002 22:32:43 -0000 @@ -1,8 +1,18 @@ +2002-05-06 Jochen Küpper + + * numcomplex.h (NUM_CROUND): Use rint instead of round. The latter is + not available on all systems, namely Cygwin. + 2002-04-10 Jochen Küpper * ndarrayinfo.h: Change NDInfo->strides to NDInfo->stride for consistency. Adopt all sources accordingly. - * genapi.py (bodystring): Do not include emacs' Local Variables - section into gnerated files. + * genapi.py (bodystring): Do not include emacs' Local Variables section + into gnerated files. + + * Local Variables: + * mode: auto-fill + * fill-column: 79 + * End: Index: Include/numarray/numcomplex.h =================================================================== RCS file: /cvsroot/numpy/numarray/Include/numarray/numcomplex.h,v retrieving revision 1.5 diff -u -r1.5 numcomplex.h --- Include/numarray/numcomplex.h 30 Apr 2002 17:29:43 -0000 1.5 +++ Include/numarray/numcomplex.h 6 May 2002 22:32:43 -0000 @@ -228,7 +228,7 @@ #define NUM_CCEIL(p, s) (s).r = ceil((p).r); (s).i = ceil((p).i); #define NUM_CFABS(p, s) (s).r = fabs((p).r); (s).i = fabs((p).i); -#define NUM_CROUND(p, s) (s).r = round((p).r); (s).i = round((p).i); +#define NUM_CROUND(p, s) (s).r = rint((p).r); (s).i = rint((p).i); #define NUM_CHYPOT(p, q, s) { Complex64 t; \ NUM_CSQR(p, s); NUM_CSQR(q, t); \ NUM_CADD(s, t, s); \ Index: Lib/codegenerator.py =================================================================== RCS file: /cvsroot/numpy/numarray/Lib/codegenerator.py,v retrieving revision 1.22 diff -u -r1.22 codegenerator.py --- Lib/codegenerator.py 3 May 2002 19:14:06 -0000 1.22 +++ Lib/codegenerator.py 6 May 2002 22:32:44 -0000 @@ -1593,7 +1593,7 @@ ["minimum", 2, 1, (function_td, "ufminimum"), generic_operator_sigs, opt_minmax_decl], ["fabs", 1, 1, (function_td, "fabs"), generic_mathfunction_sigs, ""], -["around", 1, 1, (function_td, "round"), generic_mathfunction_sigs, ""], +["around", 1, 1, (function_td, "rint"), generic_mathfunction_sigs, ""], ["hypot", 2, 1, (function_td, "hypot"), generic_mathfunction_sigs, ""], # Complex ufuncs Index: Src/_ufuncBoolmodule.c =================================================================== RCS file: /cvsroot/numpy/numarray/Src/_ufuncBoolmodule.c,v retrieving revision 1.8 diff -u -r1.8 _ufuncBoolmodule.c --- Src/_ufuncBoolmodule.c 29 Apr 2002 21:39:50 -0000 1.8 +++ Src/_ufuncBoolmodule.c 6 May 2002 22:32:45 -0000 @@ -2365,7 +2365,7 @@ Float32 *tout = (Float32 *) buffers[1]; for (i=0; i