2011-03-08 1 views
1

tclsh에서 Tk 패키지를로드하려고하는데로드 할 수 없습니다. 인터넷 검색 후 auto_path 수정이 도움이 될 수 있다고 생각했습니다. 그러나 불행하게도 그것은 나를 도와주지 않았다.패키지에 Tk가 필요합니다 - tclsh에서 작동하지 않습니다.

내 Linux 컴퓨터에서 나는 tclsh를 실행할 수 있고 둘 다 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 
% 

이 문제를 해결하는 데 도움을 줄 수있는 사람이 있습니까?

편집 : 나는 그것을 작동 시키려고 다음을 시도했다. 표준 패키지가 8.3에서 지원되지 않습니다하지만 더 좋은 방법을

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

안녕하세요, 저는 당신의 문제에 대한 답을 모르지만, 당신이 TCL의 아주 오래된 버전을 사용하고 있다는 것을 지적해야한다고 생각했습니다. 업그레이드를 통해 문제를 해결할 수도 있습니다. – TrojanName

+0

브라이언에게 감사드립니다. 나는 그것을 시도 할 것이다. – Anand

답변

2

로드 TK에가 있어야합니다 (어쨌든 지금은 기본적으로 지원되지 않는 한, 마지막 8.3 릴리스는 약 10 년 전). 8.5로 업그레이드하면 모든 것이 작동합니다. 그것은 8.4에서 작동 할 수도 있습니다 (그러나 그것도 이제는 끝이났습니다).

(8.3에서 작동하지 않는 이유가 많이 있는데, 기본적으로 추가 API 기능이 추가되어야합니다 (8.4에서 완료 됨) 빌드가 올바른 방식으로 수행되어야합니다. 8.4에서도 다뤘습니다.)

+0

브라이언과 도날에게 감사드립니다. 로딩은 8.4 이상에서 작동합니다. – Anand