2012-07-25 62 views
5

Trong khi cố gắng sử dụng py2exe để tạo ra một thực thi cho chương trình GUI của tôi, tôi đã nhận lỗi sau:py2exe không thể tìm thấy gói Tix

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 

chương trình của tôi nhập khẩu Tix, nhưng py2exe không gói nó.

Tôi không thể tìm thấy giải pháp trực tuyến nào hoạt động, nhưng gần nhất là http://www.py2exe.org/index.cgi/TixSetup.

Thật không may, thay đổi data_files thành đường dẫn Tix của tôi (Tix8.4.3 của tôi thay vì Tix8.1 cũ) cũng không hoạt động.

Chương trình thực thi chương trình của tôi không thể khởi động mà không có Tix và py2exe dường như không muốn bao gồm nó.

Tìm thư mục 'dist' mà py2exe đã tạo, tôi nhận thấy có thư mục tcl và bên trong thư mục này có thư mục 'tcl8.5' và thư mục 'tk8.5', nhưng không có thư mục Tix. Những thư mục này là những thư mục giống hệt trong thư mục 'Python/tcl /' của tôi.

Chỉ cần sao chép thư mục 'tix8.4.3' vào thư mục 'dist/tcl /' sẽ bao gồm tệp Tix DLL và tệp gói, và bây giờ chương trình của tôi hoạt động!

+1

bạn có thể thử 'nhập Tix' trong setup.py. Tuy nhiên, nếu "Đơn giản chỉ cần sao chép thư mục 'tix8.4.3' vào thư mục 'dist/tcl /'" đã hoạt động, thì dòng có data_files đang cố thực hiện chính xác điều này. Vì vậy, hãy đảm bảo rằng đường dẫn thực sự chính xác. Nó phải làm việc theo nguyên tắc. – otterb

+0

bạn đã cài đặt 'Tix chưa, hoặc bạn đã chép nó chưa? – RvdK

+0

Tôi tin rằng tôi chỉ cần sao chép thư mục. Tôi muốn chương trình và các tập tin của nó được tự chứa. –

Trả lời

1

Sử dụng gói tùy chọn py2exe để giúp py2exe tìm gói 'Tix'.

Các vấn đề liên quan