--- a/eric6/Utilities/__init__.py Mon Mar 09 19:49:48 2020 +0100 +++ b/eric6/Utilities/__init__.py Mon Mar 09 19:51:02 2020 +0100 @@ -1853,13 +1853,24 @@ else: if variant == "1": return toolname - - elif toolname == "pyside2-uic": - return toolname else: - import distutils.sysconfig - return os.path.join(distutils.sysconfig.get_python_lib(True), - "PySide2", toolname) + # step 1: check, if the user has configured a tools path + path = Preferences.getQt("PySide2ToolsDir") + if path: + return os.path.join(path, toolname) + + # step 2: determine from used Python interpreter + dirName = os.path.dirname(sys.executable) + if os.path.exists(os.path.join(dirName, toolname)): + return os.path.join(dirName, toolname) + + # step 3: if it is not 'pyside2-uic' look in the package directory + if toolname == "pyside2-uic": + return toolname + else: + import distutils.sysconfig + return os.path.join(distutils.sysconfig.get_python_lib(True), + "PySide2", toolname) def checkPyside(variant="2"):