-
سلام به همه
تازگی مشکلی در مورد استفاده از کتابخانه tkinter در پایتون 2.7.6 و 3.4.3 در اوبونتو 14.04 x86_64 دارم. هر سورس کد و برنامه ای که از کتابخانه مذکور استفاده شده باشه هنگام اجرا با خطای زیر مواجه میشه:
$ idle
Traceback (most recent call last):
File "/usr/bin/idle", line 5, in <module>
main()
File "/usr/lib/python2.7/idlelib/PyShell.py", line 1537, in main
root = Tk(className="Idle")
File "/usr/lib/python2.7/lib-tk/Tkinter.py", line 1767, in __init__
self.tk = _tkinter.create(screenName, baseName, className, interactive, wantobjects, useTk, sync, use)
_tkinter.TclError: Can't find a usable tk.tcl in the following directories:
/usr/share/tcltk/tcl8.6/tk8.6 /usr/share/tcltk/tk8.6 /usr/lib/tk8.6
/usr/local/lib/tcltk/tk8.6 /usr/local/share/tcltk/tk8.6
/usr/lib/tcltk/x86_64-linux-gnu/tk8.6 /usr/lib/tcltk/tk8.6 /usr/lib/tcltk/tcl8.6/tk8.6 /lib/tk8.6 /usr/library
/usr/share/tcltk/tk8.6/tk.tcl: couldn't read file "/usr/share/tcltk/tk8.6/ttk/clamTheme.tcl": no such file or directory
couldn't read file "/usr/share/tcltk/tk8.6/ttk/clamTheme.tcl": no such file or directory
while executing
"source /usr/share/tcltk/tk8.6/ttk/clamTheme.tcl"
("uplevel" body line 1)
invoked from within
"uplevel #0 [list source [file join $library $script]]"
(procedure "ttk::LoadThemes" line 18)
invoked from within
"ttk::LoadThemes"
(file "/usr/share/tcltk/tk8.6/ttk/ttk.tcl" line 144)
invoked from within
"source /usr/share/tcltk/tk8.6/ttk/ttk.tcl"
("uplevel" body line 1)
invoked from within
"uplevel \#0 [list source $::ttk::library/ttk.tcl]"
(file "/usr/share/tcltk/tk8.6/tk.tcl" line 692)
invoked from within
"source /usr/share/tcltk/tk8.6/tk.tcl"
("uplevel" body line 1)
invoked from within
"uplevel #0 [list source $file]"
This probably means that tk wasn't installed properly.
راه حل های پیشنهادی در سایت های مختلف داده بودن رو انجام دادم. از جمله کارایی که کردم تنظیم متغیرهای TCL_LIBRARY و TCLLIBPATH ; کپی کردن یا ایجاد لینک برای tcl8.6 در مسیر /usr/local/lib ; نصب دوباره بسته های tk tk-dev tk8.6-dev . ولی مشکل باقی ست. حالا کسی راه حل دیگه داره؟
-
سلام.
یه دور حذف و مجددا نصب بکنید، ببینید نتیجه چی میشه.
-
سلام.
یه دور حذف و مجددا نصب بکنید، ببینید نتیجه چی میشه.
اگه منظورتون کتابخانه tkinter و وابستگی هاست , این کار رو پیش تر انجام دادم و نتیجه نداد.!
-
سلام
چیزی که من می بینم قسمت اصلی خطا به این خط برمی گرده :
/usr/share/tcltk/tk8.6/tk.tcl: couldn't read file "/usr/share/tcltk/tk8.6/ttk/clamTheme.tcl": no such file or directory
حالا من چک کردم که ببینم این فایل توسط چه پکیجی ساخته می شه :
apt-file search /usr/share/tcltk/tk8.6/tk.tcl
libtk8.6: /usr/share/tcltk/tk8.6/tk.tcl
همون طور که می بینین اسم پکیج libtk8.6 هستش و اگه نصب نیست باید نصبش کنین :
sudo apt install --reinstall libtk8.6
حالا تست کنین ببین مشکلتون حل شدش یا نه؟
-
سلام
چیزی که من می بینم قسمت اصلی خطا به این خط برمی گرده :
/usr/share/tcltk/tk8.6/tk.tcl: couldn't read file "/usr/share/tcltk/tk8.6/ttk/clamTheme.tcl": no such file or directory
حالا من چک کردم که ببینم این فایل توسط چه پکیجی ساخته می شه :
apt-file search /usr/share/tcltk/tk8.6/tk.tcl
libtk8.6: /usr/share/tcltk/tk8.6/tk.tcl
همون طور که می بینین اسم پکیج libtk8.6 هستش و اگه نصب نیست باید نصبش کنین :
sudo apt install --reinstall libtk8.6
حالا تست کنین ببین مشکلتون حل شدش یا نه؟
سپاس از راه حلی که دادید.مشکل برطرف شد.
این طور که فهمیدم با نصب دوباره libtk8.6 , فایل clamTheme.tcl هم اضافه شد. هر چند با بررسی که پیش تر انجام داده بودم این بسته نصب شده بود اما فایل مذکور وجود نداشت.نتیجه می گیرم که کتابخانه tk درست نصب نشده بود.
-
سپاس از راه حلی که دادید.مشکل برطرف شد.
خواهش می کنم
لطفاً عبارت (حل شد) رو هم به عنوان اضافه کنین.
این طور که فهمیدم با نصب دوباره libtk8.6 , فایل clamTheme.tcl هم اضافه شد. هر چند با بررسی که پیش تر انجام داده بودم این بسته نصب شده بود اما فایل مذکور وجود نداشت.نتیجه می گیرم که کتابخانه tk درست نصب نشده بود.
بله کاملا درسته استفاده از --reinstall هم توی دستور ، دقیقا به خاطر همین بود که اگه فایلی پاک شده باشه دوباره ساخته بشه.