Какие библиотеки для создания GUI на Python наиболее распространенные и переносимые, какие наиболее удобные? Чтобы например можно было смело скопировать кому-нибудь свою программу и быть почти на 100% уверенным что юзеру не потребуется качать пару гигабайт библиотек чтобы запустить программу?
Имеется в наличии книжка "Python 2.1 Bible", в есть глава о создании GUI на базе библиотеки Tkinter (которая в свою очередь входит в библиотеку Tcl). Однако при попытке запустить самый простой пример:
Traceback (most recent call last):
File "hw.py", line 1, in ?
import Tkinter
File "/usr/local/lib/python2.3/lib-tk/Tkinter.py", line 38, in ?
import _tkinter # If this fails your Python may not be configured for Tk
ImportError: No module named _tkinter
Почему появляется эта ошибка если библиотеки Tcl и tk (tk насколько я понял и есть Tkinter?) в системе присутствуют?
Версии софта: Python - 2.3.2; Tcl - 8.3.5.2 и 8.4.4_1.1; tk - 8.3.5.2.
Система: FreeBSD 5.2.1.
Я бы рекомендовал wxPython как наиболее переносимую.
charlie
Можно еще PyGTK, PyQT. Неплохие библиотеки
А много в каких дистрибутивах *nix'ов они ставятся по-умолчанию? Среди имеющихся на установочном диске FreeBSD пакетов названные библиотеки я не нашел - и где же здесь переносимость? Под "переносимостью" подразумевается:
Чтобы например можно было смело скопировать кому-нибудь свою программу и быть почти на 100% уверенным что юзеру не потребуется качать пару гигабайт библиотек чтобы запустить программу?
Mitya-ncc
Хотя этот флаг по дефолту включен.
Нашел в доках упоминания про переменную TKPATH но она уже была правильно настроена. Может есть какой-то альтернативный вариант пересборки Python, очень уж не хочется качать десятки мебагайт исходников и потом еще сутки компилировать их
Тогда надо разбираться с конфигурацией непосредственно Python (_не_ пересобирать). Переменные среды (PYTHONPATH, к примеру) проверить, а может и не только. Или не столько переменные среды..
Копался в файле /usr/local/lib/python2.3/compiler/Setup но так и не разобрался, если у кого есть настроенный Python + Tk киньте пожалуйста этот файл :helpsmilie: