[Numpy-discussion] Numpy with uclibc compiled python

David Shepherd sdave@ufl....
Fri Apr 6 13:10:03 CDT 2007


You know, looking at the core it looks like it has something to do with 
the "define(linux)" statement.  I am running linux, but its a buildroot 
(uclibc) rootfs.  Let me know if you need anymore information.  Thanks.

Dave

David Shepherd wrote:
> Well, I get further into the compile process, but now it fails on 
> another gcc compile operations.  This is essentially the same error 
> message I was getting before.  It tries to #include <fenv.h>, but does 
> not find it (it shouldn't be including it anyway, as you said).  This 
> time it fails when trying to compile "_capi.c".  Thanks for all your 
> help so far!
> 
> Dave Shepherd
> 
> Here is the error output:
> 
> creating build/temp.linux-ppc-2.5/numpy/lib
> creating build/temp.linux-ppc-2.5/numpy/lib/src
> compile options: '-Inumpy/core/include 
> -Ibuild/src.linux-ppc-2.5/numpy/core -Inumpy/core/src 
> -Inumpy/core/include -I/usr/local/include/python2.5 -c'
> gcc: numpy/lib/src/_compiled_base.c
> gcc -pthread -shared 
> build/temp.linux-ppc-2.5/numpy/lib/src/_compiled_base.o -o 
> build/lib.linux-ppc-2.5/numpy/lib/_compiled_base.so
> building 'numpy.numarray._capi' extension
> compiling C sources
> C compiler: gcc -pthread -fno-strict-aliasing -mhard-float -DNDEBUG -g 
> -O3 -Wall -Wstrict-prototypes -fPIC
> 
> creating build/temp.linux-ppc-2.5/numpy/numarray
> compile options: '-Inumpy/core/include 
> -Ibuild/src.linux-ppc-2.5/numpy/core -Inumpy/core/src 
> -Inumpy/core/include -I/usr/local/include/python2.5 -c'
> gcc: numpy/numarray/_capi.c
> numpy/numarray/_capi.c:228:18: fenv.h: No such file or directory
> numpy/numarray/_capi.c: In function `int_overflow_error':
> numpy/numarray/_capi.c:230: warning: implicit declaration of function 
> `feraiseexcept'
> numpy/numarray/_capi.c:230: error: `FE_OVERFLOW' undeclared (first use 
> in this function)
> numpy/numarray/_capi.c:230: error: (Each undeclared identifier is 
> reported only once
> numpy/numarray/_capi.c:230: error: for each function it appears in.)
> numpy/numarray/_capi.c: In function `NA_checkFPErrors':
> numpy/numarray/_capi.c:2947: warning: implicit declaration of function 
> `fetestexcept'
> numpy/numarray/_capi.c:2948: error: `FE_DIVBYZERO' undeclared (first use 
> in this function)
> numpy/numarray/_capi.c:2948: error: `FE_OVERFLOW' undeclared (first use 
> in this function)
> numpy/numarray/_capi.c:2948: error: `FE_UNDERFLOW' undeclared (first use 
> in this function)
> numpy/numarray/_capi.c:2948: error: `FE_INVALID' undeclared (first use 
> in this function)
> numpy/numarray/_capi.c:2954: warning: implicit declaration of function 
> `feclearexcept'
> numpy/numarray/_capi.c:228:18: fenv.h: No such file or directory
> numpy/numarray/_capi.c: In function `int_overflow_error':
> numpy/numarray/_capi.c:230: warning: implicit declaration of function 
> `feraiseexcept'
> numpy/numarray/_capi.c:230: error: `FE_OVERFLOW' undeclared (first use 
> in this function)
> numpy/numarray/_capi.c:230: error: (Each undeclared identifier is 
> reported only once
> numpy/numarray/_capi.c:230: error: for each function it appears in.)
> numpy/numarray/_capi.c: In function `NA_checkFPErrors':
> numpy/numarray/_capi.c:2947: warning: implicit declaration of function 
> `fetestexcept'
> numpy/numarray/_capi.c:2948: error: `FE_DIVBYZERO' undeclared (first use 
> in this function)
> numpy/numarray/_capi.c:2948: error: `FE_OVERFLOW' undeclared (first use 
> in this function)
> numpy/numarray/_capi.c:2948: error: `FE_UNDERFLOW' undeclared (first use 
> in this function)
> numpy/numarray/_capi.c:2948: error: `FE_INVALID' undeclared (first use 
> in this function)
> numpy/numarray/_capi.c:2954: warning: implicit declaration of function 
> `feclearexcept'
> error: Command "gcc -pthread -fno-strict-aliasing -mhard-float -DNDEBUG 
> -g -O3 -Wall -Wstrict-prototypes -fPIC -Inumpy/core/include 
> -Ibuild/src.linux-ppc-2.5/numpy/core -Inumpy/core/src 
> -Inumpy/core/include -I/usr/local/include/python2.5 -c 
> numpy/numarray/_capi.c -o 
> build/temp.linux-ppc-2.5/numpy/numarray/_capi.o" failed with exit status 1
> #
> 
> David M. Cooke wrote:
>> -----BEGIN PGP SIGNED MESSAGE-----
>> Hash: SHA1
>>
>> David Shepherd wrote:
>>> Hey all,
>>>
>>> We started to try and compile the numpy module on an embedded PowerPC 
>>> Xilinx board with no luck.  This is one of the errors I get when I try 
>>> to build the module on-board.  It is due to the fact that the compiler 
>>> is located in a different location than the original compiler for python 
>>> (i think).  I made symbolic links to fix the first error.  The second 
>>> more critical error that I cannot recover from is the "Error: 
>>> Unrecognized opcode: `fldenv'".  There are many more duplicates of this 
>>> error, but it occurs when the "umathmodule.c" is being compiled.
>> Setting CC to your C compiler should work
>>
>>> I am using Binutils 2.17, GCC 3.4.6, and Python 2.5.  Again, python was 
>>> compiled with uclibc, not the standard libraries.  We require the FFT 
>>> module for a project that is due in about a week.  Any help would be 
>>> appreciated.
>>> multiple assembler opcode errors when it tries to run the entry build:
>>>
>>> powerpc-linux-gcc -DNDEBUG -g -O3 -Wall -Wstrict-prototypes -fPIC 
>>> -Ibuild/src.linux-ppc-2.5/numpy/core/src -Inumpy/core/include 
>>> -Ibuild/src.linux-ppc-2.5/numpy/core -Inumpy/core/src 
>>> -Inumpy/core/include -I/root/python/include/python2.5 -c 
>>> build/src.linux-ppc-2.5/numpy/core/src/umathmodule.c -o 
>>> build/temp.linux-ppc-2.5/build/src.linux-ppc-2.5/numpy/core/src/umathmodule.o
>>> .
>>> .
>>> .
>>> .
>>> Error: Unrecognized opcode: `fldenv'
>> The culprit looks like numpy/core/include/numpy/fenv/fenv.h, which is
>> odd, as I don't see how it would be included -- it's only used for
>> cygwin. I would think there would be no floating point environment
>> support included, as the system <fenv.h> is only included when one of
>> __GLIBC__, __APPLE__, or __MINGW32__ is defined.
>>
>> See if the attached patch helps.
>>
>> - --
>> |>|\/|<
>> /------------------------------------------------------------------\
>> |David M. Cooke              http://arbutus.physics.mcmaster.ca/dmc/
>> |cookedm@physics.mcmaster.ca
>> -----BEGIN PGP SIGNATURE-----
>> Version: GnuPG v1.4.6 (Darwin)
>> Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org
>>
>> iD8DBQFGFmXYN9ixZKFWjRQRAu23AJ44AslsO5HxqDiVuLjYTzI59Dpt4wCgnBOY
>> 2zEHO9XAQVDVTLtWS7xhWpA=
>> =Hag4
>> -----END PGP SIGNATURE-----
>>
>>
>> ------------------------------------------------------------------------
>>
>> Index: numpy/core/include/numpy/ufuncobject.h
>> ===================================================================
>> --- numpy/core/include/numpy/ufuncobject.h	(revision 3673)
>> +++ numpy/core/include/numpy/ufuncobject.h	(working copy)
>> @@ -276,6 +276,13 @@
>>  	(void) fpsetsticky(0);						\
>>  	}
>>  
>> +#elif defined(__UCLIBC__)
>> +
>> +#define NO_FLOATING_POINT_SUPPORT
>> +#define UFUNC_CHECK_STATUS(ret) { \
>> +    ret = 0;                      \
>> +  }
>> +
>>  #elif defined(linux) || defined(__APPLE__) || defined(__CYGWIN__) || defined(__MINGW32__)
>>  
>>  #if defined(__GLIBC__) || defined(__APPLE__) || defined(__MINGW32__)
>>
>>
>> ------------------------------------------------------------------------
>>
>> _______________________________________________
>> Numpy-discussion mailing list
>> Numpy-discussion@scipy.org
>> http://projects.scipy.org/mailman/listinfo/numpy-discussion
> _______________________________________________
> Numpy-discussion mailing list
> Numpy-discussion@scipy.org
> http://projects.scipy.org/mailman/listinfo/numpy-discussion
> 


More information about the Numpy-discussion mailing list