人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

KDEとGNOMEの違いについて
Ubuntuで使われているディスクトップ環境はGNOMEだと思いますが、Qt CreatorをインストールしてQtでGUIアプリが組めるのはなぜでしょうか?

1268577738
●拡大する

●質問者: garyo
●カテゴリ:コンピュータ インターネット
✍キーワード:GNOME GUI KDE Qt Ubuntu
○ 状態 :終了
└ 回答数 : 1/1件

▽最新の回答へ

1 ● longicorn
●60ポイント

回答がつかないようですので自分が分かる範囲で



まず、ご存知とは思いますが基本から書かせてもらいます。

Linux(というかUnix)ではCUIが基本でその上にGUIを担当するX Window Systemが動作しています。

このX Window Systemはクライアント/サーバとして動作しています。当然ネットワーク経由でも動作します。

おもしろいことに、PC AからPC BをGUIで操作する場合、PC A側(つまりGUI表示担当部分)がサーバで、PC Bで動作するのがクライアントという設計になっています。(つまり通常のC/Sの感覚から言えば逆です)

さらに、すこし考えると不思議な事に、グラフィック関係のハードウェアを触るはずが、ドライバではなく単なるユーザ空間でのプロセスとして動作しています。もちろん理由がありますがこのあたりはさすがに細かいので省略します。


素のX Window Systemは当然ライブラリがありプログラマはそれを使いGUIプログラミングができる訳ですが、これが最低限のGUIの機能しか提供しておらずプログラマから見れば非常に使い難いです。(昔少しだけ挑戦しましたけどプログラミングは確かに可能ですが、あまりにも面倒くさいので止めました。)

そこでこのX Window Systemのライブラリを使った、使いやすいライブラリ(早い話がX Window Systemのラッパーです)がでてきます。これがウィンドウマネージャやデスクトップ環境になります。


ここからが本題ですが、KDEにしろGNOMEにしろ突き詰めるとX Window System上で動く単なるCやC++のライブラリです。

ですので必要なライブラリさえあればGNOME上でQtアプリケーションは動作します。

自分はUbuntuを使用していますが、FluxBoxを使ったり、xfceを使ったりしていますが、FluxBox上でGnomeのアプリを動かしたり、xfce上でQtアプリを動かしたり色々できます。

もちろんその気になれば自分でウィンドウマネージャやデスクトップ環境を1から作ってGNOME上で自前GUIプログラムを動かすことも可能なはずです。


ちなみに、ウィンドウマネージャはその名の通りウィンドウの配置や外観を管理するだけです。デスクトップ環境はD&Dをできるようにしたり、背景を管理できたりウィンドウマネージャよりも広範囲の担当を行います。

またおもしろいのはデスクトップ環境とウィンドウマネージャを組み合わせることも可能です。

分かりやすい例で言えば、GNOME + CompizにすることによりGNOME環境でCompiz(3Dデスクトップ)を使用する等です。


と書きましたが、あくまでこれは自分が知っている簡単な概念のみの話ですので実際QtやGNOMEのソースコードを読んだわけではありません。

X Window SystemとQtの間にさらに何かがあるかもしれませんし、間違いも含まれているかも。

最終的にはご自分でも調べたほうが良いと思います。


最後に、ウィンドウマネージャのリストとデスクトップ環境のリストがあるURLを書いておきます。興味があれば他の環境を試すのもおもしろいかもしれません。

ウィンドウマネージャのリスト

http://ja.wikipedia.org/wiki/%E3%82%A6%E3%82%A3%E3%83%B3%E3%83%8...

http://xwinman.org/

デスクトップ環境のリスト

http://ja.wikipedia.org/wiki/%E3%83%87%E3%82%B9%E3%82%AF%E3%83%8...

◎質問者からの返答

ありがとうございました。X Windowの部分が同じなので動くわけですね。

KDE用のソフトもGNOME用のソフトも互いにどちらででも動くわけですね。

関連質問


●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ