Я сделал приложение, использующее модули tkinter и tkinterdnd. Он отлично работает, когда я запускаю его как скрипт, однако, когда я пытаюсь создать из него исполняемый файл и запустить его, возникает следующая ошибка:
Traceback (most recent call last):
File "TkinterDnD2\TkinterDnD.py", line 53, in _require
_tkinter.TclError: can't find package tkdnd
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "IxcomGUI.py", line 128, in <module>
File "IxcomGUI.py", line 11, in __init__
File "TkinterDnD2\TkinterDnD.py", line 285, in __init__
File "TkinterDnD2\TkinterDnD.py", line 55, in _require
RuntimeError: Unable to load tkdnd library.
[14512] Failed to execute script 'IxcomGUI' due to unhandled exception!
Я попробовал следующее:
- Установлен tkinterdnd2 с
pip install
и собран сpyinstaller myscript.py
. - Установленный вручную модуль tkinterdnd2, как показано в этом видео https://www.youtube.com/watch?v=JIy0QjwQBl0&t=605s&ab_channel=RamonWilliams и собран с помощью
pyinstaller myscript.py
- Повторил предыдущий шаг, но добавил вот это https://github.com/pmgagne/tkinterdnd2/blob/master/hook-tkinterdnd2.py
- Пытался неявно указать pyinstaller путь к модулю tkdnd, указав путь к модулю с флагом --paths.
Все эти попытки привели к следующей ошибке. Кто-нибудь знает какое-нибудь решение?
Вы включили часть
--additional-hooks-dir=.
в командную строку pyinstaller, как сказано в файле на шаге 3?да, я нашел, но я также случайно нашел решение, я уже разместил его здесь.