Tsuneyasu KOMIYA
TUTScheme,TUTScheme/Tkの処理系
[最近の更新内容]
※TUTScheme/Tk は TUTSchemeにTcl/TkのTkの機能を組み込んだものです.サンプルプログラムとして,SICP(日本語版SICP)の図形言語を用意しています.
※
Fedora Core, Cygwinで利用の際はトラブル対処もご覧下さい.
Cygwin で必要なパッケージ
ソースからコンパイルする場合:
- Develの gcc, makeパッケージ及び Libs の readline が必要です.
- TUTScheme/Tk をコンパイルするには Libs の tcltk 及び X11 の
xorg-x11-devel が必要です.但し,Cygwin版TUTScheme/Tk は X11アプリケー
ションではありません.
「TUTScheme/Tk(バイナリ)」を使うには,Libs の tcltk 及び readline が必要です.
TUTSchemeのコンパイルとインストール
ソースからコンパイル&インストールする場合
(上記ソースパッケージのREADMEファイルにも情報があります.)
標準的なインストール方法は,
% make tus ;; make コマンドは一応 GNU Make を想定しています
;;(多くのシステムでの make は GNU Make だと思います)
# make install-tus ;; root権限で実行
です./usr/local/bin/{tus, tus2} と /usr/local/lib/tus/* が作成されます.
インストール後は,ソースのディレクトリは不要です.TUTScheme/Tk の場合は,上記に現れる全ての"tus"を"tustk"に置き換えて下さい.
バイナリ版をインストールする場合
# cd /usr/local
# tar zxf tus-xxx.tar.gz あるいは tar zxf tustk-xxx.tar.gz
TUTScheme(/Tk)の起動コマンド
TUTscheme は tus あるいは tus2,TUTScheme/Tk は tustk あるいは tustk2
です.tus2, tustk2 は行編集機能,ファイルコンプリーション機能付です
(使い方は Bashを参考にしてください).
`make tus' が正常に終了したにもかかわらず,インストールした TUTScheme
(コマンド名 tusあるいはtustk)が起動できない場合は,以下をお試し下さい.
# make install-tus ;; とりあえずインストールする
# tus
(ここで Segmentation fault 等で tus を実行できない場合は引き続き以下を行う)
# rm /usr/local/lib/tus/saved_image
# cp -r lsp /usr/local/lib/tus
# vi /usr/local/bin/tus ;; /usr/local/bin/tus をエディット
「exec /usr/local/lib/tus/raw_tus -l/usr/local/lib/tus/ -h32 "$1" "$2"」を
「exec /usr/local/lib/tus/raw_tus -L/usr/local/lib/tus/lsp -l/usr/local/lib/tus/ -h32 "$1" "$2"」と変更
# vi /usr/local/bin/tus2
(/usr/local/bin/tus と同様の修正を行う)
この修正は,起動したプロセスが毎度同じアドレスのメモリを割当てできないシステムにおいて必要です.現在,Fedora Core release 2 と一部の(??) Cygwin で必要なことを確認しています.
Cygwinでのコンパイル
最新版のCygwinでは,`make tus' あるいは `make tustk' でエラーが生じるかも知れません.その場合は,c/scheme.hの913行目から始まる
#elif defined(__CYGWIN32__)
#define ADDRESS(obj) ((0x03fffffc & (unsigned)(obj)) | 0x10000000)
#define SSERDDA(adr) (0xefffffff & (unsigned)(adr))
の3行をコメントアウトするか消去してください(今のところ,自動判別する
ようになっていません).
CygwinでのTUTScheme/Tkの実行
Cygwin版TUTScheme/Tkの実行で「Can't find a usable init.tcl in the
following directories: ...」というエラーが出る場合は,
/usr/local/bin/{tustk,tustk2}に
TCL_LIBRARY=/usr/share/tcl8.4
export TCL_LIBRARY
を追加してください.make 時にも同様のエラーが出る場合は,shell 上で上
記2行を実行してから make して下さい.
Q. [08/09/03] Ubuntu (8.04)でTUTScheme/Tkをmakeすると,tcl-dev及びtk-devパッケージがインストールされているにも関わらず,tcl.hやtk.hが見つからずエラーとなる.
A. config/Makefile.inの25行目
INCLUDES= -I. -I$(srcdir)/c
を
INCLUDES= -I. -I$(srcdir)/c -I/usr/include/tk
のようにtcl.hとtk.hの置かれるディレクトリを追加指定してください(修正後,make clean-tustkしてからmakeし直してください).
※この報告&修正法は,須田瑛大さん@京都大学工学部情報学科より,お知らせ頂きました.どうもありがとうございます.エレガントな解決法はまた考えるとして:-),Ubuntu使いの方はお試しください.
Q. [11/20] TUTScheme/Tk を起動すると,窓が新たに1つ開くはずなのに開かない.
A. ソースをこのように修正してみて下さい(いずれ,配布ソース・バイナリに反映させます).
※この不具合&解決法(!)は,村瀬昌満さん@京都大学大学院奥乃研究室より,お知らせ頂きました.どうもありがとうございます.
その他のソフトウェア(TUTSchemeと関係なし)
問い合わせ先
までお願いします.
要望や「OS XXX でコンパイルできない」等の情報も大歓迎です.