vladvrabie / material_recommender

A Blender 2.80 add-on that helps you generate materials
GNU General Public License v3.0
74 stars 9 forks source link

libmmd.dll error (missing) #6

Closed faber6911 closed 3 years ago

faber6911 commented 3 years ago

After starting the learning procedure the following error occurs:

location: <unknown location>:-1 Error: Python: Traceback (most recent call last): File "C:\Users\fabri\AppData\Roaming\Blender Foundation\Blender\2.92\scripts\addons\material_recommender\operators\preferences\learn.py", line 28, in execute preferences_properties.is_persistent File "C:\Users\fabri\AppData\Roaming\Blender Foundation\Blender\2.92\scripts\addons\material_recommender\gms\gpr.py", line 35, in train gpr_new.optimize('rprop') File "c:\Program Files\Blender Foundation\Blender 2.92\2.92\python\lib\site-packages\GPy\core\gp.py", line 659, in optimize ret = super(GP, self).optimize(optimizer, start, messages, max_iters, ipython_notebook, clear_after_finish, **kwargs) File "c:\Program Files\Blender Foundation\Blender 2.92\2.92\python\lib\site-packages\paramz\model.py", line 108, in optimize opt = optimizer(max_iters=max_iters, **kwargs) File "c:\Program Files\Blender Foundation\Blender 2.92\2.92\python\lib\site-packages\paramz\optimization\optimization.py", line 289, in __init__ _check_for_climin() File "c:\Program Files\Blender Foundation\Blender 2.92\2.92\python\lib\site-packages\paramz\optimization\optimization.py", line 248, in _check_for_climin import climin File "c:\Program Files\Blender Foundation\Blender 2.92\2.92\python\lib\site-packages\climin\__init__.py", line 14, in <module> ctypes.CDLL(os.path.join(basepath, 'core', 'libmmd.dll')) File "c:\Program Files\Blender Foundation\Blender 2.92\2.92\python\lib\ctypes\__init__.py", line 364, in __init__ self._handle = _dlopen(self._name, mode)

Any solution to this? Have you ever faced it? I am using the Python Blender in Blender 2.92.

faber6911 commented 3 years ago

Fixed. The solution is go in: your python path\site-packages\climin\ init .py

from:

if sys.platform == "win32":
  basepath = imp.find_module("numpy")[1]
  ctypes.CDLL(os.path.join(basepath, "core", "libmmd.dll"))
  ctypes.CDLL(os.path.join(basepath, "core", "libifcoremd.dll"))

to:

if sys.platform == "win32":
    try:
        basepath = imp.find_module("numpy")[1]
        ctypes.CDLL(os.path.join(basepath, "core", "libmmd.dll"))
        ctypes.CDLL(os.path.join(basepath, "core", "libifcoremd.dll"))
    except Exception:
        pass