[Numpy-discussion] 1.4.0 installer fails on OSX 10.6.2

Christopher Barker Chris.Barker@noaa....
Wed Jan 6 10:22:24 CST 2010


NOTE: cc-d to the pythonmac list from the numpy list -- this is really a 
Mac issue. It's a discussion of what/how to produce binaries of numpy 
for OS-X


David Cournapeau wrote:
> On Wed, Jan 6, 2010 at 9:18 AM, Christopher Barker
> <Chris.Barker@noaa.gov> wrote:
> 
>> If distutils/setuptools could identify the python version properly, then
>>  binary eggs and easy-install could be a solution -- but that's a mess,
>> too.
> 
> It would not solve the problem, really. Two same versions of python
> does not imply compatible python when C extensions are involved. In
> current state of affairs, where python does not have a stable ABI, the
> only workable solution is to target one specific python

So you are saying that binary eggs are simply impossible altogether. 
Maybe true, I suppose, but...

>>> As the 2.6 series is binary compatible, you can build a single
>>> installer
>>> that will work with both
> 
> I don't think that's true. 2.6.x are compatible with each other iif
> they are built with the same compiler options. There are too many
> differences between Apple python and the python.org python (dtrace, 64
> bits support, compiler options, etc...) IMHO to make a compatible
> installer for both versions worthwhile.

Well, it was possible once, and it's been working just fine for wxPython 
for a good while. Things may have changed with OS-X 10.6, tough I think 
the wxPython binary still works (32 bit only, of course).

> I agree that the lack of 64 bits installer is an issue, but building
> numpy on mac os x is not that difficult, and I think people who need
> 64 bits often are more knowledgeable.

I agree -- but what do you get if you install OS-X 10.6, and then type 
"python" at the prompt -- is that a 32 bit or 64 bit python?

 > There are also solutions like
> EPD and the likes, which support 64 bits.

but not PPC anymore, sigh.

There is a key problem here -- folks running OS-X expecting it to be 
another Unix are fine -- they install the compiler, build their own 
extensions, probably use some combination of fink and macports, etc.

This may well apply to many Scientific programmers, and web developers 
(though it maybe not).

However, there is a different type of Mac user -- the type that has 
traditionally used Macs. Some of these folks are giving a bit of 
programming a try, and have heard that python is an easy to learn 
language -- and, cool, OS-X even comes with it installed!

But then they soon enough discover that they need additional packages of 
some sort --- and numpy is a very, very useful package, and not just for 
the experienced programmer (think Matlab users, for instance). These 
folks haven't installed the compiler, don't know 64 from 32 bit, and 
heaven forbid, have no idea how the heck to compile a dependency with 
the "./configure && make && make install" dance.

Some years ago, the community on the pythonmac list made significant 
efforts to try to support these folks. Primarily what they need are 
binary installers. We also more or less declared the python.org python 
as the official python to support, and even had a repository of 
pre-built packages (http://pythonmac.org/packages/py25-fat/index.html). 
It was pretty handy -- you could get python itself and all the major 
packages there, all working together.


That repository is not longer maintained, for a couple reasons:
  1) Bob Ippolito is doing other things
  2) A lot of package developers are providing binaries themselves
  3) It's gotten even messier!

But there is still a community out there that it would be nice to support.

So the question is: how do we do it? That repository appears to be dead, 
though it could be revived if there is a bit of interest. But even 
without it, it would be great if there was some sort of consensus among 
the pythonmac crowd and the major package developers as to what to 
provide binaries for. We're really in a mess if you can only get a 
binary for PIL for the Apple Python, and only get a binary for numpy for 
the python.org python.

Personally, I still think the Apple python is dead-end -- Apple has 
never supported it properly. And, if you go that route you need a 
different build for people running 10.4 and 10.5, and 10.6, and ...

I'm not sure what the 64 bit story is -- I suspect that David is right 
-- folks running 64 bits are the ones that know what they are doing, so 
they have less need for binaries. So maybe for now this is a good goal:

python 2.5:
   python.org build (32 bit PPC and intel)

python 2.6:
   32 bit python.org 2.6.4
   64 bit python.org build?

python 2.7:
   python.org 3-way build, if that happens.
   or separate 32 and 64 bit builds

python 3.1:
   python.org build (whatever it ends up being)

Darn, that's quite a few to support!


NOTE: Ned Deily just posted a good summary of what's out there on teh 
pythonmac list:

http://mail.python.org/pipermail/pythonmac-sig/2010-January/022031.html

-Chris

















-- 
Christopher Barker, Ph.D.
Oceanographer

Emergency Response Division
NOAA/NOS/OR&R            (206) 526-6959   voice
7600 Sand Point Way NE   (206) 526-6329   fax
Seattle, WA  98115       (206) 526-6317   main reception

Chris.Barker@noaa.gov


More information about the NumPy-Discussion mailing list