Search code examples
pythonwindows-10cx-freeze

Import Error: DLL load failed: The specified module could not be found when using cxfreeze


I've been trying to convert a .py file to a .exe file using pyinstaller (failed, too many modules missing), now I've moved on to cx_freeze, things are running smoother but I'm still unable to compile my script. I'm using windows 10, 64 bit if it matters. Here is my setup.py

 import sys
from cx_Freeze import setup, Executable

setup(
    name = "EyeBreak",
    version = "3.1",
    description = "Script to remind user of 202020 eye rule.",
    executables = [Executable("EyeBreak.py", base = "Win32")])

I get an error from cmd as follows:

 Microsoft Windows [Version 10.0.14393]
(c) 2016 Microsoft Corporation. All rights reserved.

C:\Users\fares>cd c:\Python34

c:\Python34>python setup.py build
running build
running build_exe
Traceback (most recent call last):
  File "setup.py", line 8, in <module>
    executables = [Executable("EyeBreak.py", base = "Win32")])
  File "c:\Python34\lib\site-packages\cx_Freeze\dist.py", line 362, in setup
    distutils.core.setup(**attrs)
  File "c:\Python34\lib\distutils\core.py", line 148, in setup
    dist.run_commands()
  File "c:\Python34\lib\distutils\dist.py", line 955, in run_commands
    self.run_command(cmd)
  File "c:\Python34\lib\distutils\dist.py", line 974, in run_command
    cmd_obj.run()
  File "c:\Python34\lib\distutils\command\build.py", line 126, in run
    self.run_command(cmd_name)
  File "c:\Python34\lib\distutils\cmd.py", line 313, in run_command
    self.distribution.run_command(command)
  File "c:\Python34\lib\distutils\dist.py", line 974, in run_command
    cmd_obj.run()
  File "c:\Python34\lib\site-packages\cx_Freeze\dist.py", line 231, in run
    metadata = metadata)
  File "c:\Python34\lib\site-packages\cx_Freeze\freezer.py", line 101, in __init__
    for n in self._GetDefaultBinPathExcludes() + binPathExcludes]
  File "c:\Python34\lib\site-packages\cx_Freeze\freezer.py", line 242, in _GetDefaultBinPathExcludes
    **import cx_Freeze.util
ImportError: DLL load failed: The specified module could not be found.**

Solution

  • Check your installation of cx_Freeze for util.pyd. From the errors noted above that should be in this location:

    c:\Python34\lib\site-packages\cx_Freeze\util.pyd

    If that isn't found, your installation is broken. You can use this command to install a pre-built cx_Freeze instead:

    python -m pip install cx_Freeze --upgrade