From c0e9dc2d1fbb0be1b6b9ef7595aa8d2cb69cea99 Mon Sep 17 00:00:00 2001 From: Matt Quick Date: Thu, 28 Jan 2021 10:32:43 -0700 Subject: [PATCH] Fix odrivetool by adding the dll path on windows --- tools/odrive/pyfibre/fibre/libfibre.py | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/tools/odrive/pyfibre/fibre/libfibre.py b/tools/odrive/pyfibre/fibre/libfibre.py index 25da83ad..4019787e 100644 --- a/tools/odrive/pyfibre/fibre/libfibre.py +++ b/tools/odrive/pyfibre/fibre/libfibre.py @@ -68,8 +68,16 @@ if os.path.getsize(lib_path) < 1000: " 3. Run `git lfs install`\n" " 4. Run `git lfs pull`".format(lib_path, os.path.dirname(lib_path))) -lib = windll.LoadLibrary(lib_path) if os.name == 'nt' else cdll.LoadLibrary(lib_path) - +if os.name == 'nt': + dll_dir = os.path.dirname(lib_path) + try: + # New way in python 3.8+ + os.add_dll_directory(dll_dir) + except: + os.environ['PATH'] = dll_dir + os.pathsep + os.environ['PATH'] + lib = windll.LoadLibrary(lib_path) +else: + lib = cdll.LoadLibrary(lib_path) # libfibre definitions --------------------------------------------------------#