Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Py2Exe, [Errno 2] No such file or directory: 'numpy-atlas.dll'

I have included matplotlib in my program, I searched about numpy_atlas.dll on google and I seem to be the only one on Earth with this problem.

setup.py

from setuptools import setup
import py2exe

setup(console=['EulerMethod.py'])

Running Py2Exe results in error

C:\(..obmitted..)>python setup.py py2exe
running py2exe
*** searching for required modules ***
*** parsing results ***
......
...obmitted...
......
*** finding dlls needed ***
error: [Errno 2] No such file or directory: 'numpy-atlas.dll'
like image 479
Louis Hong Avatar asked Mar 24 '16 01:03

Louis Hong


2 Answers

I encountered the same problem. After a little testing, appending numpy.core directory to sys.path seemed to work.

from distutils.core import setup
import py2exe

import numpy
import os
import sys

# add any numpy directory containing a dll file to sys.path
def numpy_dll_paths_fix():
    paths = set()
    np_path = numpy.__path__[0]
    for dirpath, _, filenames in os.walk(np_path):
        for item in filenames:
            if item.endswith('.dll'):
                paths.add(dirpath)

    sys.path.append(*list(paths))

numpy_dll_paths_fix()
setup(...)
like image 110
J.J. Hakala Avatar answered Oct 21 '22 05:10

J.J. Hakala


This is what worked for me. I found the dll: C:\Python27\Lib\site-packages\numpy\core\numpy-atlas.dll and copied it to the same folder that has the setup.py

like image 37
max Avatar answered Oct 21 '22 05:10

max