On Apr 27, 2009, at 4:05 PM, Wes McKinney wrote:
> Hello,
>> I am wondering if anyone can offer some suggestions on this problem.
> Over the last year or so I have been building a number of libraries
> on top of NumPy + SciPy + matplotlib and other libraries which are
> being used for investigative research for my company's problem
> domain in place of, say, Matlab and R (which are more "ready out of
> the box" systems). I have approximately 20 users, all of whom are
> running Windows on a very Microsoft-centric network with databases,
> etc. Has anyone had any luck managing a standardized Python
> environment on lots of Windows machines with a large number of 3rd-
> party Python libraries? Upgrading packages right now involves
> getting 20 people to click through an .exe installer, which is
> hardly a good solution. For example, I was recently forced to
> upgrade everyone's NumPy to 1.3 after I discovered that a DLL I had
> built against 1.3 was incompatible with 1.2.x.
There has been a good discussion of this with others. I'm pretty
sure we had fixed this in NumPy so at least you would get a sane error
instead of a segfault. The solution may not be ideal and it can be
hard to remember to edit the right place in the headers when a change
is made so it may not have been done for 1.3
>>> It seems like on a Unix / OS X environment with root access this
> problem would be fairly easy to script away, but on Windows it's
> rather painful. Any advice would be much appreciated.
This is a real problem we have encountered at Enthought as well.
The Enthought Python Distribution solves this problem using a
repository of eggs that the users have access to and a system that can
update their machines on a regular schedule (i.e. nightly). I
think others have done similar things (copy eggs into a directory and
update the search path).
This kind of large scale use and maintenance problem is something we
are trying to solve with the Enthought Python Distribution. If
anybody is interested in it, feel free to email or call me off line.
EPD is more than a one-click installer. It's also a repo that can be
locally mirrored and added to for your own distribution needs.
Best regards,
-Travis