On 10/26/06, Charles R Harris <cha...@gm...> wrote:
>
>
>
> On 10/26/06, Mathew Yeates <my...@jp...> wrote:
> >
> > yes, I got around the problem from my previous posting "distutils
> > question". I added ld_args[:0] = ['-m64'] to line 209 of
> > python2.5/distutils/unixcompiler.py. Lovely, yes I know.
> >
> > I now get an error "numpy/core/src/multiarraymodule.c:7230: error:
> > `NPY_ALLOW_THREADS' undeclared". This is after several billion warning
> > messages of the form
> > numpy/core/src/multiarraymodule.c:5010: warning: dereferencing
> > type-punned pointer will break strict-aliasing rules
>
>
> GCC? Needs the -no-strict-aliasing flag. Everybody hates the default
> except the compiler writers because you can't cast pointers between
> different sized types, something the linux kernel and numpy do a lot. Things
> can fail badly if you don't set the flag and ignore the warnings.
>
Make that -fno-strict-aliasing. The whole command line on x86 looks like:
gcc -pthread -fno-strict-aliasing -DNDEBUG -O2 -g -pipe -Wall
-Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector
--param=ssp-buffer-size=4 -m32 -march=i386 -mtune=generic
-fasynchronous-unwind-tables -D_GNU_SOURCE -fPIC -fPIC
Chuck
|