Red Hat Training
A Red Hat training course is available for RHEL 8
44.3. Tcl/Tk 8.6 への移行
Red Hat Enterprise Linux 7 では Tcl/Tk 8.5 が使用されていました。Red Hat Enterprise Linux 8 の Tcl/Tk バージョン 8.6 は、Base OS リポジトリーで提供されます。
本セクションでは、以下を対象に、Tcl/Tk 8.6 への移行パスを説明します。
- Tcl 拡張を記述する、または Tcl インタープリターをアプリケーションに組み込む開発者
- Tcl/Tk を使用してタスクのスクリプトを作成するユーザー
44.3.1. Tcl 拡張機能の開発者のための移行パス
コードを Tcl 8.6 と互換性を持たせるには、以下の手順に従います。
手順
コードを書き直し、
interp
構造を使用するようにします。たとえば、コードがinterp→errorLine
を読み込む場合は、これを書き直して以下の関数を使用します。Tcl_GetErrorLine(interp)
Tcl 8.6 は、
interp
構造のメンバーへの直接アクセスを制限するため、これが必要です。コードを、Tcl 8.5 および Tcl 8.6 の両方と互換性を持たせるには、C または C++ アプリケーションのヘッダーファイル、または Tcl ライブラリーを含む拡張に、以下のコードスニペットを使用してください。
# include <tcl.h> # if !defined(Tcl_GetErrorLine) # define Tcl_GetErrorLine(interp) (interp→errorLine) # endif