py2exe не может найти пакет Tix

При попытке использовать py2exe для создания исполняемого файла для моей программы с графическим интерфейсом я получил следующую ошибку:

Traceback (most recent call last):
  File "dopy.py", line 139, in <module>
  File "Tix.pyc", line 225, in __init__
_tkinter.TclError: can't find package Tix

Моя программа импортирует Tix, но py2exe его не упаковывает.

Я не смог найти в Интернете ни одного работающего решения, но самым близким было http://www.py2exe.org/index.cgi/TixSetup.

К сожалению, изменение data_files на мой путь Tix (My Tix8.4.3 вместо старого Tix8.1) тоже не работает.

Исполняемый файл моей программы не может запускаться без Tix, и py2exe, похоже, не хочет его включать.

Глядя в папку «dist», созданную py2exe, я заметил, что есть папка tcl, а внутри нее есть папка «tcl8.5» и папка «tk8.5», но нет папки Tix. Эти папки были идентичны папкам в моей папке «Python/tcl/».

Простое копирование папки «tix8.4.3» в папку «dist/tcl/» будет включать DLL-библиотеки Tix и файлы пакетов, и теперь моя программа работает!


person Paul Vasiu    schedule 25.07.2012    source источник
comment
вы можете попробовать import Tix в файле setup.py. Но, если сработало простое копирование папки tix8.4.3 в папку dist/tcl/, то строка с data_files пытается сделать именно это. Итак, убедитесь, что пути действительно правильные. В принципе должно работать.   -  person otterb    schedule 27.08.2014
comment
Вы «установили» Tix или просто скопировали его?   -  person RvdK    schedule 25.11.2014
comment
Я считаю, что мне просто нужно было скопировать папку. Я хотел, чтобы программа и ее файлы были автономными.   -  person Paul Vasiu    schedule 26.11.2014


Ответы (1)


Используйте пакеты опций py2exe, чтобы помочь py2exe найти пакет «Tix».

person Werner    schedule 25.11.2014