2012-01-10 19 views
0

私はいくつかのコマンドを実行するために/bin/shを使用していますが、これらのコマンドのいくつかは私を必要と私は本当に意味が、これらのコマンドは、私のソフトウェアに誤った出力を与えるかわからない「グラフィカルターミナル」を持っているが、正しい出力に通常のGnome/KDE端末。linuxの下でCでグラフィカルな端末を作る方法は?

私のソフトウェアは、「グラフィカルターミナル」であるという根本的なX Window Sessionを伝えるために離れている場合、私は不思議でしたか?

+0

申し訳ありませんが、Xまたは単純なcurses端末UIについて話していますか?アプリケーションはXアプリです(AtenaWidgetsやGtkに依存しています)か、単に端末に出力しますか? – BigMike

+0

私はあなたの質問を理解していない。グラフィック端末を起動するか、コマンドがグラフィック環境から起動したことを確認しますか? –

+0

シンプルなCアプリケーションで、依存関係がなく、/ binからいくつかのコマンドを実行していくつかの操作を実行すると、それはすべて – killercode

答えて

0

通常、Xウィンドウを使用するソフトウェアは、DISPLAY環境変数に依存しています。
値は10.0.0.1:0.0のようになります。10.0.0.1はあなたのIPアドレスです(0.0が何であるか分かりませんが、0.0が正常に動作します)。
また、PC上で実行するためには、ウィンドウを表示するXサーバソフトウェアが必要です。 @ugorenとして

+0

大丈夫、今すぐやり直してみよう – killercode

+3

'DISPLAY'変数の値を作り出すことは、ほとんどの場合、特にそれがどのように形成されているのか分からなければ、悪い考えです。 –

+0

@ SimonRichter最悪の場合、プログラムが無効なアドレスに接続できないと終了することがあります。 –

1

DISPLAY変数は、アプリケーションからのX Window Systemを見つけるために使用されているものである、と述べました。 Xがバックグラウンドで実行されていない場合、変数は設定解除されます。あなたは古いものに話すことができない場合

あなたのスクリプトからxinitを使用して新しいXサーバを起動することができます。理想的には、これはXvnc(ハードウェアアクセスを必要としない)のようなものです。私が正しく理解していれば

1

リモートマシンまたは任意のX Serverを実行していない少なくとも一つの上でアプリケーションを実行しようとしています。そのような場合は、Xvfbを使用してアプリケーションを接続し、ウィンドウを描画する仮想サーバーを作成してみてください。

+0

リモートマシンの場合は、 'ssh -X'(適切に設定されているとX11を転送している)を使って接続できます。 –

関連する問題