Qt/Embeddedを使って、Linuxデスクトップマシンで組み込みのGUIプログラミングを体験する本連載。今回は、Qt2とQt3を選択するうえでの要点と注意事項について、また、Qt/X11のインストールまでを解説する。
Qt/EmbeddedにはQt2系列とQt3系列があります。デスクトップではたいていQt3系列のバージョンが使用されていますが、組み込みシステムではフットプリント削減の重要度が高いことが多く、この場合Qt2系列の使用も検討事項になります。また、Linux Zaurusに代表されるQtopiaはQt2系列で実装されていて、Qt3系列での実装予定はありません。2005年3月末リリース予定のQt4以降、QtopiaがQt4のQt/Embeddedに移植される予定となっています(コラム)。
表7は、Qt2とQt3を選択するうえでの要点と注意事項をまとめたものです。また、次のURLに現在までのリリースの変更記録があり、比較する際には役立つでしょう。
http://www.trolltech.com/developer/changes/
なお、本連載ではQt/Embedded 3.3.3を用いて解説を行います。
| ポイント | 説明 |
|---|---|
| サイズ | Qt2系列のほうがQt3系列よりサイズが小さく起動時間が短い。これは、Qt4で改善される予定 |
| 機能の相違 | Qt2とQt3で機能やウィジェットの種類などで多くの相違がある |
| 同一クラスでの機能の相違 | 例えば、Qt2のQDirectPainterにsetAreaChanged(const QRect&)がなかったり、関数region()が非constであるような小さな相違がある |
| Qt Designer | Qt3では操作性が改善され、プラグインウィジェットやサブクラスなしでのコード編集などをサポートしている。Qt Designerに力点を置く場合には重要な判断材料となる |
| 翻訳ファイル作成 | Qt3ではQt Linguistと関連コマンドを用いたQt2よりも扱いやすくメッセージ翻訳ファイルが作成できる。また、翻訳ファイル作成コマンドの種類も異なる |
| 表7 Qt2とQt3を選択するうえでの要点と注意事項 | |
2004年11月24日現在、Qtの最新バージョンは3.3.3で、バグ修正バージョンの3.3.4が2004年末にリリースされる予定です。現在Qtの次期メジャーリリースQt 4の開発が表Aの予定で進められています。
| リリース日 | バージョン |
|---|---|
| 2004年7月8日 | Qt 4 Preview 1。X11、Windows、Mac OS X |
| 2004年9月24日 | Qt 4 Preview 2。Qt Embeddedが追加 |
| 2004年末 | Qt 4 Beta |
| 2005年第1四半期末 | Qt 4.0.0 |
| 2005年 | Qtopia |
| 表A Qt 4.0のリリーススケジュール | |
Qt 4には機能的にいろいろな改善や追加がありますが、ライブラリサイズ、使用メモリ、起動時間の短縮などパフォーマンスの改善も予定されています。図AはQt 4 Preview 2のQt Embeddedの実行画面で、ウィジェット内での半透明描画が実装されているのが分かります。Preview 2では、描画図形のアンチエイリアスや描画速度の点でまだ目標に達していませんが、リリースまでに改善されるのを期待したいところです。
本文で触れたように、PDAや携帯電話向けのQtopiaは、Qt Embedded上に構築された組み込み機器向けのデスクトップ環境です。QtopiaはQt 3のライブラリサイズや起動時間の問題のためにQt2での実装のみとなっています。Qt 4でQt 3のこれらの問題が解消されれば、Qt 4のリリース後にQtopiaがQt 4に移植され、Qt 3で実装されたIPv6などの機能も使えるようになります。これによって、組み込み機器でも半透明の描画やアンチエイリアスなどが利用できるようになり、高品位のGUIが作成できることが期待されています。
フットプリント削減: プログラムが最小限の動作をしているときに消費しているメモリ使用量をフットプリントという。一般に組み込み機器ではメモリなどのハードウェアリソースが小さく、フットプリントを小さくすることが望ましい。
Qt4: Qt4では、サイズや速度のパフォーマンスが改善されるほか、多くの機能の追加とブラッシュアップが行われる。
Copyright(c)2010 SOFTBANK Creative Inc. All rights reserved.