On Tue, Jun 15, 2010 at 11:06 AM, Chris LeBlanc
<crleblanc@gmail.com> wrote:
Hi,
Firstly thanks to everyone that has helped bring NumPy to the point it
is today. Its an excellent bit of software.
I've recently managed to get NumPy to compile on a 64 bit Solaris 10
(sparc) machine. We've embedded 64 bit Python in some of our C code
using the Python C-API, and therefore require a 64 bit version of
NumPy.
I had to use a bit of a hack to get NumPy to compile in 64 bit mode,
and I'm just wondering if there's a more elegant way of doing it?
If I set CFLAGS to "-m64 -xcode=pic32", and CC to "/usr/bin/cc", it
will raise the following error:
... snipped most of backtrace ...
File "/home/leblanc/source/numpy/numpy/distutils/command/build_src.py",
line 385, in generate_sources
source = func(extension, build_dir)
File "numpy/core/setup.py", line 675, in get_mathlib_info
raise RuntimeError("Broken toolchain: cannot link a simple C program")
However, if I create a wrapper script and set CC to the path of the
wrapper, then it will build normally and create a NumPy module I can
use from the 64 bit version of Python installed on the system
(/usr/bin/sparcv9/python). Here's the wrapper:
#!/bin/sh
/usr/bin/cc -m64 -xcode=pic32 $*
I did a bit of googling and couldn't find much information on this
issue (which is why I wanted to post this message, so others could
find it). I'm satisfied with the results, but wondering if there's a
better way to do it.
It's because CFLAGS does not append to but overrides flags. Your wrapper script manages to append flags.
Does the patch in
http://projects.scipy.org/numpy/ticket/1382 work for you? If so it can be applied I think.
Cheers,
Ralf