I'm helping out on the FPDB project ( http://sourceforge.net/projects/fpdb/ ) where we are using Python, and create a py2exe .exe package for end-users.

Bug reports were received from a small number of users reporting a crash on startup with an error relating to numpy.core.dotblas.pyd

This issue is caused as follows:

1/ The numpy installer package, by default, automatically detects the SSE level of the build machine and installs an optimised package.

2/ Therefore the build machine creating the py2exe package generally has a Numpy package which is not suitable for all CPU's.

3/ All py2exe packages built on that machine can obviously only embed the optimised Numpy package which was installed.

4/ If that py2exe package is then executed on a lower-level CPU, it will crash.

The solution is to over-ride the default numpy installation on the build machine:

1/ uninstall the existing numpy package

2/ download the installer but do not execute it

3/ install from the command line with this special option

dos> numpy-1.4.1-win32-superpack-python2.6.exe /arch nosse

Allowable option values are nosse sse2 and sse3.
Choosing sse3 on an sse2 host is probably a bad idea.
you would need to check for any regressions in your particular project

For information, support thread for a related issue http://projects.scipy.org/scipy/ticket/1170

Kindest regards,
Steve aka Gimick/

Keywords: py2exe numpy dotblas SSE SSE2 SSE3 crash