пакет требует Tk - не работает в tclsh - PullRequest
1 голос
/ 09 марта 2011

Я пытаюсь загрузить пакет Tk в tclsh, но я не могу его загрузить. После поиска в Google я подумал, что изменение auto_path может помочь. Но, к сожалению, это не помогло мне.

На моей машине с Linux я могу запустить tclsh и wish, и оба v8.3; Вот что я попробовал на tclsh и хочу:

% tclsh
% package require Tk
can't find package Tk
% puts $auto_path
/usr/share/tcl8.3 /usr/share /usr/lib
% 

% wish
% puts $auto_path
/usr/share/tcl8.3 /usr/share /usr/lib /usr/share/tk8.3
% 

% tclsh
% lappend auto_path /usr/share/tk8.3
/usr/share/tcl8.3 /usr/share /usr/lib /usr/share/tk8.3
% package require Tk
can't find package Tk
% 

Может ли кто-нибудь помочь мне решить эту проблему?

EDIT: Я попробовал следующее, чтобы заставить его работать. Но должен быть лучший способ

% tclsh
% load /usr/lib/libtk8.3.so
% package require Tk
8.3

1 Ответ

2 голосов
/ 09 марта 2011

Загрузка Tk как стандартного пакета не поддерживается в 8.3 (который в настоящее время в основном не поддерживается; последний выпуск 8.3 был около 10 лет назад).Обновление до 8.5 должно заставить все это работать;это может также работать в 8.4 (но это также конец срока действия).

(Есть целая куча причин, почему это не работало в 8.3; в основном, это требовало добавления дополнительных функций API- сделано в 8.4 - и требуется правильная сборка. Это было сделано и в 8.4.)

...