通常のシステムでは、必要に応じてライブラリをエクスポートして、tcl が init.tcl を見つけられないという文句を言わないようにすることができました。ただし、tclを配布するためのスナップパッケージを作成しています。ビルドしてインストールしたら、tcl.tclsh を実行できます (これは、スナップ名前空間を維持するために必要な形式です)。上記の苦情が表示され、tclsh プロンプトにとどまります。Tcl スクリプトを正常に実行できます。ただし、wish という別のバイナリを実行することはできません。このスナップ名は tcl.wish です。これらは両方とも同じスナップにあり、問題のファイル init.tcl はライブラリの場所に存在し、tcl は見つからないと文句を言います。このファイルを見つけられるように、tclsh を実行する直前に必要なライブラリの場所をエクスポートする必要があると思います。これらのパスのエコーを含めてこれを試したので、実行されることがわかりました。これは機能しますが、それでも役に立ちません。私はただ複数のことに困惑していると思います。私は tcl のプロではありません。きびきびしたパッケージは新しく、コマンドは常に進化しています。Organize コマンドを使用して、すべてのバイナリを /bin に移動し、すべてのライブラリを /lib に移動するか、tcl が期待するとおりに配置することができます。ファイルを期待どおりに配置することに投票します。私の質問:
- tcl と tk の予期される場所の明確に定義されたセットはありますか? 箱から出してすぐに理想的なセットアップが好きですか?
- init.tcl を既知のパスに既にある場所に移動できますか? これらのlibパスをbashrcに入れることは避けました。これは私の状況を修正するだけで、マシンにこれをインストールする人は修正しないからです。スナップパッケージを実行するときにパス設定を行う必要があります...と思います。
長々とすみません。これが問題であるかどうかにかかわらず、私たちはきびきびした環境の中で tcl を扱っていることを明確にしたかったのです。Snapcraftはこれらのファイルを.debsが指示する場所に配置する必要があり、コンピューターへのインストールは正常に機能するため、明らかなものが欠けていることはわかっています。$ export -p は tcl または tk を何も表示しません