2011-06-28 10 views
1

C++/Tkプログラムを実行可能ファイルにコンパイルするためのステップバイステップの手順は、エンドユーザーが追加のソフトウェアをインストールする必要がないマシン、TCL tkの完全な静的リンクオプションはありますか?C++/Tk:特殊なTcLインタープリタをインストールするために、必要なエンドユーザで実行される実行可能ファイルを作成できますか?

答えて

3

静的に構築されたTclとTkは正常に動作します。これはサポートされています(デフォルトではありません)。ソースリリースを入手して--disable-sharedで設定して、適切な種類のライブラリを確実に作成できるようにしてください。あなたも(私はあなたを仮定していますが、これらの他のプログラムのいずれかを呼び出す前Tcl_FindExecutableを呼び出す必要が除く

、あなたのアプリケーション内からのTclとTkを使用するコーディングについて知っておくべきことのほとんどにコリンの答えのリンクは、Tcl_MainまたはTk_Mainを呼び出すのではありませんが、それはあなたには役に立ちますが、それぞれtclshwishのように動作するように縛られています)。これは、Tclライブラリが内部的に正しく設定されていることを保証するために必要な呼び出しです。エンコードシステムやその他の低レベルの詳細の初期化を処理するためです。

あなたのプログラムをtclshやwishで動作させるように構築でき、拡張パッケージとしてC++コードをロードするだけなら、コードstubs-enabledをビルドして、それをすべてstarkit/starpackとしてパッケージ化することを強く勧めます。特に、starpackは、TclとTk のアプリケーションコードを圧縮されたアーカイブ形式で自立的にバイナリ配布する単一ファイルの実行可能ファイルです。このようにアプリを配布するのは本当に素晴らしいことです。ユーザーが意図せずにコードを破ることを避けるためですが、すべてに適しているわけではありません。 (コードの暗号化も含むことができる関連するソリューションがありますが、商用版のみです)

3

これはTclのオリジナルの使用例ですが、これほど頻繁に行われることはありません。ブレント・ウェルチの書籍のthis free chapterを参考にしてください。(または最新版については、彼の本の第4版を購入してください)もう一つの短い要約はTcl wikiのAdding Tcl/Tk to a C applicationです。

関連する問題