Qbs 1.7 をリリースしました

この記事は The Qt BlogQbs 1.7 released を翻訳したものです。

執筆: Jake Petroules, 2017年1月31日

Qbs 1.7 「テクニカル・エクスタシー」を本日リリースいたしました!

Qbs 1.7.0 は実は12月の中旬にリリースしていたのですが、いくつか修正をしたいバグがあったため、アナウンスは先週リリースした 1.7.1 まで延期していました。

Qbs 1.7 の新機能

数多くのバグフィックスや細かい改善、いくつかの大幅なパフォーマンスの向上に加えいくつかの新機能が追加されました。重要なものから順に紹介したいと思います。

ジェネレータ

ジェネレータは Qbs 1.7 のもっとも大きな新機能です。これにより、サードパーティーの開発ツールへの根本的な対応が可能になりました。

ジェネレータ API はとても汎用的な設計になっています。ビルドグラフに対して、任意の処理を実行するためのプラグインが作成可能で、私たちもこの仕組みを利用して Xcode* や Visual Studio のプロジェクトファイルを生成しています。これにより、皆さんが Qbs のエンジンの力強さと表現力の高さを、お気に入りの統合開発環境でも活用することができるようになりました。

コミュニティからは Clang compilation database を生成する機能の貢献が寄せられています。これにより、Clang ベースのツールがコンパイラとまったく同じ方法でソースコードのスキャンを行うことが、ビルドシステムへの依存なしに可能になりました。次はどんなジェネレータがコミュニティから生まれてくるのかを非常に楽しみにしています。

ジェネレータを作成する際は、qbs generate コマンドをみなさんのプロジェクトでお試しください。ドキュメントについては将来的に マニュアル に記載される予定です。

ジェネレータは現在絶賛実験中の機能ですので、お気軽にフィードバックをお寄せください。

* この Xcode ジェネレータは Qbs 1.8 でリリース予定です

これ以外の新機能

  • グループアイテムのネストが可能になりました。これによりさらに自然にグループを構成することができ、条件についても親のプロパティとの論理演算が可能になりました。また、ルートエレメント以下にツリー構造を表現する QML に似た文法で、グループを別ファイルとして存在させることも可能になりました。
  • qrc ファイルのプロジェクトファイルからの自動生成が可能になりました。これにより、手動で複数のファイルをメンテナンスすることから開放されます。この機能は Qt.core モジュールの一部として実装され、いくつかの新しいプロパティによってプロジェクト内のどのファイルを自動的に qrc ファイルに追加するかを容易に制御できるようになっています。
  • ドキュメントに関してはこれまで一番要望が多かった ロール についてのドキュメントが整備されました。
  • Qbs のプロジェクトファイルのプロパティの型チェックをより厳密に行うようにしました。これによりいくつかの文法的な記述エラーがよりわかりやすくなりました。
  • C/C++ モジュールの Microsoft Visual Studio 2017 対応
  • Qt モジュールに QtScxml のサポートを追加
  • Inno Setup インストーラの作成に対応

もう一つここでお知らせしたいのは、オープンソースの C++ のパッケージマネージャー  Conan が Qbs に対応した ということです。こういったサードパーティーのコンテンツをプロジェクトに容易に取りこめる仕組みとの連携はエコシステムにいるみなさんの利益につながると信じています。

ぜひお試しください!

オープンソース版は ダウンロードページ よりダウンロード可能です。商用版は Qt Account Portal より入手してください。もしバグを見つけた際には バグトラッカー にて報告してください。IRC の chat.freenode.net の #qt-qbs や メーリングリスト 上でのコミュニケーションも可能です。ドキュメント や wiki を参考に色々お試しいただければと思っています。

Qbs は有名なパッケージシステム (Chocolatey, MacPorts, Homebrew) にて提供されていて、Qbs の開発チームによりリリース毎にアップデートがされています。Debian や UbuntuArch Linux など様々な Linux ディストリビューションのネイティブなパッケージ管理システム経由でもインストール可能です。

Qbs 1.7.1 は先週リリースされたばかりの Qt Creator 4.2.1 にも含まれています。


Blog Topics:

Comments