delorie.com/archives/browse.cgi   search  
Mail Archives: cygwin/2002/05/06/18:37:43

Mailing-List: contact cygwin-help AT cygwin DOT com; run by ezmlm
List-Subscribe: <mailto:cygwin-subscribe AT cygwin DOT com>
List-Archive: <http://sources.redhat.com/ml/cygwin/>
List-Post: <mailto:cygwin AT cygwin DOT com>
List-Help: <mailto:cygwin-help AT cygwin DOT com>, <http://sources.redhat.com/ml/#faqs>
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<f*n1TeWpDxL;vm\2]@7KGXgHzB#JSK#;`z4tYg#7ck/]wrqw6:}
;vcVMJ0N~%+;N&e,%5phkzeP![#CQ^y^]lyS0Wvp"sV(0$dvw}(12VU<:|q~@MX]S=o46H!(2*%?'k
Wz-%ul~-hoJL$/SQzy&^?aLj"u9)Lk0zvwmg|#\@U{j:5?C-*{<3que:_Vb AT Ly
X-URL: http://www.jochen-kuepper.de
From: "Jochen =?iso-8859-1?q?K=FCpper?=" <jochen AT unc DOT edu>
Organization: University of North Carolina
Date: 06 May 2002 18:36:58 -0400
Message-ID: <lyr8koj439.fsf@bock.chem.unc.edu>
Lines: 47
MIME-Version: 1.0

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 "<stdin>", 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)
,----
| <type 'PyCObject'>
`----

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  <jochen AT unc DOT edu>
+
+	* 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  <jochen AT unc DOT edu>
 
 	* 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<niter; i++, tin++, tout++) {
-        *tout = round(*tin);
+        *tout = rint(*tin);
     }
     return 0;
 }
Index: Src/_ufuncFloat32module.c
===================================================================
RCS file: /cvsroot/numpy/numarray/Src/_ufuncFloat32module.c,v
retrieving revision 1.8
diff -u -r1.8 _ufuncFloat32module.c
--- Src/_ufuncFloat32module.c	29 Apr 2002 21:39:50 -0000	1.8
+++ Src/_ufuncFloat32module.c	6 May 2002 22:32:45 -0000
@@ -1773,7 +1773,7 @@
     Float32 *tout = (Float32 *) buffers[1];
     
     for (i=0; i<niter; i++, tin++, tout++) {
-        *tout = round(*tin);
+        *tout = rint(*tin);
     }
     return 0;
 }
Index: Src/_ufuncFloat64module.c
===================================================================
RCS file: /cvsroot/numpy/numarray/Src/_ufuncFloat64module.c,v
retrieving revision 1.8
diff -u -r1.8 _ufuncFloat64module.c
--- Src/_ufuncFloat64module.c	29 Apr 2002 21:39:50 -0000	1.8
+++ Src/_ufuncFloat64module.c	6 May 2002 22:32:45 -0000
@@ -1773,7 +1773,7 @@
     Float64 *tout = (Float64 *) buffers[1];
     
     for (i=0; i<niter; i++, tin++, tout++) {
-        *tout = round(*tin);
+        *tout = rint(*tin);
     }
     return 0;
 }
Index: Src/_ufuncInt16module.c
===================================================================
RCS file: /cvsroot/numpy/numarray/Src/_ufuncInt16module.c,v
retrieving revision 1.8
diff -u -r1.8 _ufuncInt16module.c
--- Src/_ufuncInt16module.c	29 Apr 2002 21:39:51 -0000	1.8
+++ Src/_ufuncInt16module.c	6 May 2002 22:32:45 -0000
@@ -2254,7 +2254,7 @@
     Float32 *tout = (Float32 *) buffers[1];
     
     for (i=0; i<niter; i++, tin++, tout++) {
-        *tout = round(*tin);
+        *tout = rint(*tin);
     }
     return 0;
 }
Index: Src/_ufuncInt32module.c
===================================================================
RCS file: /cvsroot/numpy/numarray/Src/_ufuncInt32module.c,v
retrieving revision 1.8
diff -u -r1.8 _ufuncInt32module.c
--- Src/_ufuncInt32module.c	29 Apr 2002 21:39:51 -0000	1.8
+++ Src/_ufuncInt32module.c	6 May 2002 22:32:45 -0000
@@ -2254,7 +2254,7 @@
     Float32 *tout = (Float32 *) buffers[1];
     
     for (i=0; i<niter; i++, tin++, tout++) {
-        *tout = round(*tin);
+        *tout = rint(*tin);
     }
     return 0;
 }
Index: Src/_ufuncInt8module.c
===================================================================
RCS file: /cvsroot/numpy/numarray/Src/_ufuncInt8module.c,v
retrieving revision 1.8
diff -u -r1.8 _ufuncInt8module.c
--- Src/_ufuncInt8module.c	29 Apr 2002 21:39:51 -0000	1.8
+++ Src/_ufuncInt8module.c	6 May 2002 22:32:45 -0000
@@ -2254,7 +2254,7 @@
     Float32 *tout = (Float32 *) buffers[1];
     
     for (i=0; i<niter; i++, tin++, tout++) {
-        *tout = round(*tin);
+        *tout = rint(*tin);
     }
     return 0;
 }
Index: Src/_ufuncUInt16module.c
===================================================================
RCS file: /cvsroot/numpy/numarray/Src/_ufuncUInt16module.c,v
retrieving revision 1.8
diff -u -r1.8 _ufuncUInt16module.c
--- Src/_ufuncUInt16module.c	29 Apr 2002 21:39:51 -0000	1.8
+++ Src/_ufuncUInt16module.c	6 May 2002 22:32:45 -0000
@@ -2249,7 +2249,7 @@
     Float32 *tout = (Float32 *) buffers[1];
     
     for (i=0; i<niter; i++, tin++, tout++) {
-        *tout = round(*tin);
+        *tout = rint(*tin);
     }
     return 0;
 }
Index: Src/_ufuncUInt8module.c
===================================================================
RCS file: /cvsroot/numpy/numarray/Src/_ufuncUInt8module.c,v
retrieving revision 1.8
diff -u -r1.8 _ufuncUInt8module.c
--- Src/_ufuncUInt8module.c	29 Apr 2002 21:39:51 -0000	1.8
+++ Src/_ufuncUInt8module.c	6 May 2002 22:32:45 -0000
@@ -2249,7 +2249,7 @@
     Float32 *tout = (Float32 *) buffers[1];
     
     for (i=0; i<niter; i++, tin++, tout++) {
-        *tout = round(*tin);
+        *tout = rint(*tin);
     }
     return 0;
 }


--=-=-=
Content-Type: text/plain; charset=us-ascii

--
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple
Bug reporting:         http://cygwin.com/bugs.html
Documentation:         http://cygwin.com/docs.html
FAQ:                   http://cygwin.com/faq/
--=-=-=--

- Raw text -


  webmaster     delorie software   privacy  
  Copyright © 2019   by DJ Delorie     Updated Jul 2019