GUIアプリケーションフレームワーク Qt

ArmadilloではGUIツールキットとして「Qt(キュート)」を利用することができます。
Qtは、C++言語で書かれたアプリケーションフレームワークです。Windows、Linux、MacOSなどのデスクトップOSの他、組み込みLinuxでも同じAPIを使えるマルチプラットフォームで、デスクトップPCから組み込み機器まで同じアプリケーションを動作させることができる点が大きな特長です。

Qt+Armadilloのメリット

Qtだけでアプリケーション開発できる

Armadillo向けの統合開発環境「ATDE」には、Qtでの開発を支援するツールキット[*1]が標準でインストールされています(ATDE5以降)。Qtにはファイル操作やデータベースアクセス、XML 解析、ネットワークサポートなどの機能が含まれており、簡単なアプリケーションならQtだけで開発することができます。

"いまどき"のリッチなUIにも対応

Qt5には、JavaScriptをベースに発展した宣言型のUI記述言語「QML」と直観的な操作感が特長の開発ツールを含むGUI開発フレームワーク「Qt Quick」が採用されています。OpenGLをフル活用した3D表示も可能で、滑らかなアニメーションなどを必要とする"いまどき"のリッチなデザインのGUIをタッチパネル機器で実現したいときでも、手軽に開発することができます。

GUIを先行開発して開発を効率化

Armadillo向けに開発したQtアプリケーションは、デスクトップOS向けと同じAPIで動作します[*2]。複数のプラットフォームを1つのAPIでカバーできるので、デスクトップOS上で組み込み機器向けGUIのテスト開発を実機開発と併行して進めておくなど、開発スケジュールの効率化が可能です。

Qtのライセンス

Qtは複数のライセンスのもとで頒布されており、商用版(Qt Commercial License、Digia社から提供)とオープンソース版(LGPL v2.1ライセンス/GPL v3ライセンス)が存在します。商用版はQt販売代理店からご購入可能です。

商用版とオープンソース版の違い

商用版・オープンソース版ともに基本ライブラリの持つ機能やAPIは共通ですが、商用版にはオープンソース版にない追加機能やツールがあります[*3]。商用版の詳細は、Qt販売代理店のSRA社のWebサイトで詳しく紹介されています。

参考:Qtに関する情報(SRA社/Qt販売代理店)

ATDE5に含まれている、Armadillo用にポーティングされたQtやツール群は、LGPL v2.1ライセンス向けのものです。LGPL v2.1のもとに無償で使用・自由にアプリケーション開発することができますが、Qtそのものに手を加えた場合にユーザー(開発物の使用者)に対するソースコード公開・配布義務が課せられるなどといった制限があるため、あらかじめ注意が必要です。

※注意※!
一旦オープンソース版で製品開発をスタートした場合、後から商用版に切り替えることができません。Armadilloで製品化する場合は、開発に着手する前に、あらかじめ各ライセンスの詳細・制限についてよく確認・理解した上で、開発物のライセンス種別を選択してください。

開発・量産向け商用ライセンスの購入

商用版Qtを使用して開発するときは開発者ライセンス(Developer License)が、Armadillo用Qtアプリケーション(商用版で開発)を組み込んだ機器を製品化するときはランタイムライセンス(Runtime Distribution License)が必要です。商用ライセンスは、Qt販売代理店からご購入いただけます。詳細はWebフォームからお問い合わせください。

開発トレーニング

Armadillo+Qtトレーニングコース(SRA社主催)

Qt代理店のSRA社が、Armadilloを使ったQt開発トレーニングコースを開講しています。詳しくは下記をご覧ください。

SRA社Webサイト

Armadillo+Qtに関する情報

ArmadilloサイトでQtに関するHowTo情報を公開しています。

[HowTo] Armadillo-440でQt


[*1] 統合開発環境「Qt Creator」、UIデザインツールの「Qt Designer」、翻訳支援ツールの「Linguist」などを標準でインストール済みです。
[*2] Armadillo用にポーティングされたQtに含まれていないライブラリを利用するアプリケーションは、別途コンパイルする必要があります。
[*3] 商用グラフパッケージの追加やオープンソース版より多機能なツール類など。商用版の機能説明については、販売代理店であるSRA社のWebサイトに詳細な説明が掲載されています。

カテゴリ: