Qtとは――第1回 フレームバッファでQtアプリ(その1)UNIX USER1月号「デスクトップで動かす・学ぶQt/Embedded」より転載(1/3 ページ)

組み込みでのGUIアプリケーションは、ウィンドウシステムがない環境で動き、組み込みボードやタッチパネルなどの小型表示装置が用いられることが多いため、これまでは興味があっても簡単に手が出せませんでした。しかし最近は、Linux環境でフレームバッファが利用できるようになり、デスクトップマシンで組み込みGUIを体験できるようになっています。本連載では、Qt/Embeddedを使って、Linuxデスクトップマシンで組み込みのGUIプログラミングを体験します。

» 2004年12月15日 20時00分 公開
[杉田研治,UNIX USER]
連載で扱う範囲

 本連載では、全3回の予定で、Qt/Embeddedの導入からチューニング、テストとデバッグを扱います(図1)。具体的には表1のようになります。

図1 図1 連載で扱う範囲(クリックで拡大します)
表1 連載の予定
タイトル 内容
第1回 Qt/Embeddedを使う Qt/Embeddedの概要とインストールの詳細を説明し、簡単なプログラムを、ウィンドウシステムを動かさずにフレームバッファ上で実行します
第2回 カスタマイズと
チューニング
TIFF形式イメージ、フォントの追加、アイコンや効果音のコードへの埋め込みなど機能面でのカスタマイズ、およびライブラリサイズの削減、起動時間の短縮、描画速度のチューニングについて説明します
第3回 テストとデバッグ 開発パターン、テストの自動化、デバッグテクニックについて、Qtに特有の方法を説明します。全体を通して、Qtでのアプリケーション作成方法よりも、組み込み向けにQtを使う方法に重点を置いて説明します。連載で扱う範囲は図1のようになります

Qtとは

 Qtは、Trolltech(http://www.trolltech.com/)が開発したマルチプラットフォームC++ GUIツールキット*で、UNIX/Linux、Windows、Mac OS X、Embedded Linuxをターゲットとしています(図2)。簡明で直交性と柔軟性が高いAPIが提供されているため、単独プラットフォームがターゲットでも、アプリケーションの作成に十分な機能を持ちます。このほかにもいろいろな特徴がありますが、全ソースコードが提供されること、そして、ソフトウェア開発者にとって、そのアーキテクチャを納得し、楽しく使えるというのが一番の特徴です。

図2 図2 Qtはソースコード互換のマルチプラットフォームライブラリ(クリックで拡大します)

 図3はQtのGUI部分の構成で、プラットフォーム依存レイヤーは表2のように実装されています。

図3 図3 QtのGUI部分のレイヤー構成
表2 Qtのプラットフォーム依存レイヤー
プラットフォーム依存レイヤー 説明
Qt/X11 UNIX/LinuxのX11で、Xlibで実装されている
Qt/Windows Windows 95/98/Me/NT/2000/XP/2003で、Win32とGDIで実装されている
Qt/Mac OS X Mac OS X 10.1/10.2/10.3で、CarbonとCocoaで実装されている
Qt/Embedded 上記のデスクトップのQtの機能をEmbedded Linuxでそのまま使えるようにしたもので、フレームバッファを直接アクセスして描画を行う

このページで出てきた専門用語
GUIツールキット
GUIアプリケーションを開発する際に利用できるライブラリ。ウィンドウやボタン、確認ダイアログなど、利用しやすい単位でライブラリ関数が用意されている。主なものに、GNOMEで利用されているGtk+2、KDEで利用されているQt、Xウィンドウ全般で利用されているMotifなどがある。


       1|2|3 次のページへ

Copyright(c)2010 SOFTBANK Creative Inc. All rights reserved.

注目のテーマ