このページでは

qmakeの設定

プロパティ

qmake には永続的な設定システムがあり、qmake でプロパティを一度設定すれば、qmake が呼び出されるたびにそのプロパティを参照することができます。qmake でプロパティを設定するには、次のようにします。

qmake -set PROPERTY VALUE

PROPERTY およびVALUE の部分は、適切なプロパティと値に置き換えてください。

この情報は、次のようにして qmake から取得できます:

qmake -query PROPERTY
qmake -query #queries all current PROPERTY/VALUE pairs

注: qmake -query には 、qmake -set PROPERTY VALUE で設定したプロパティに加え、組み込みのプロパティも一覧表示されます。

この情報はQSettings オブジェクトに保存されます(つまり、プラットフォームごとに異なる場所に保存されます)。

以下のリストは、built-in のプロパティをまとめたものです:

  • QMAKE_SPEC - ホストのビルド中に解決され、QMAKESPEC変数に格納されるホストmkspec の短縮名
  • QMAKE_VERSION - qmakeの現在のバージョン
  • QMAKE_XSPEC - ターゲットのビルド中に解決され、QMAKESPEC変数に格納されるターゲットmkspec の短縮名
  • QT_HOST_BINS - ホスト実行ファイルの場所
  • QT_HOST_DATA - qmake が使用するホスト実行ファイルのデータの場所
  • QT_HOST_LIBS - ホストライブラリの場所
  • QT_HOST_LIBEXECS - 実行時にホストライブラリが必要とする実行ファイルの場所
  • QT_HOST_PREFIX - すべてのホストパスに対するデフォルトのプレフィックス
  • QT_INSTALL_ARCHDATA - 一般的なアーキテクチャ依存の Qt データの場所
  • QT_INSTALL_BINS - Qt バイナリ(ツールおよびアプリケーション)の場所
  • QT_INSTALL_CONFIGURATION - Qtの設定ファイルの場所。Windowsでは適用されません
  • QT_INSTALL_DATA - アーキテクチャに依存しない一般的な Qt データの保存場所
  • QT_INSTALL_DOCS - ドキュメントの保存場所
  • QT_INSTALL_EXAMPLES - サンプルプログラムの保存場所
  • QT_INSTALL_HEADERS - すべてのヘッダーファイルの保存場所
  • QT_INSTALL_LIBEXECS - 実行時にライブラリが必要とする実行ファイルの配置先
  • QT_INSTALL_LIBS - ライブラリの場所
  • QT_INSTALL_PLUGINS - Qt プラグインの保存先
  • QT_INSTALL_PREFIX - すべてのパスに対するデフォルトのプレフィックス
  • QT_INSTALL_QML - QML 2.x 拡張機能の場所
  • QT_INSTALL_TESTS - Qt Test テストケースの場所
  • QT_INSTALL_TRANSLATIONS - Qt 文字列の翻訳情報の場所
  • QT_SYSROOT - ターゲットのビルド環境で使用される sysroot
  • QT_VERSION - Qtのバージョン。代わりに、$$QT.<module>.version 変数を使用して、Qtモジュール固有のバージョン番号を取得することをお勧めします。

たとえば、このバージョンの qmake における Qt のインストール状況は、QT_INSTALL_PREFIX プロパティを使用して確認できます:

qmake -query "QT_INSTALL_PREFIX"

プロジェクトファイル内のプロパティの値は、次のように取得できます:

QMAKE_VERS = $$[QMAKE_VERSION]

QMAKESPEC

qmake には、適切な Makefile を生成するために使用される多くのデフォルト値を含む、プラットフォームおよびコンパイラの記述ファイルが必要です。標準の Qt ディストリビューションには、これらのファイルの多くが同梱されており、Qt インストール先の `mkspecs ` サブディレクトリに配置されています。

QMAKESPEC 環境変数には、以下のいずれかを指定できます:

  • qmake.conf ファイルを含むディレクトリへの完全なパス。この場合、qmake はそのディレクトリ内にあるqmake.conf ファイルを開きます。ファイルが存在しない場合、qmake はエラーを出力して終了します。
  • プラットフォームとコンパイラの組み合わせの名前。この場合、qmake は、Qt のコンパイル時に指定されたデータパスのmkspecs サブディレクトリで指定されたディレクトリ内を検索します(QLibraryInfo::DataPath を参照)。

注: QMAKESPEC パスは 、生成されるMakefileにおいて、システム変数INCLUDEPATHの内容の後に自動的に追加されます。

キャッシュファイル

キャッシュファイルは、qmake.conf ファイル、プロジェクトファイル、またはコマンドラインで指定されていない設定を見つけるために qmake が読み込む特別なファイルです。qmake が実行されると、-nocache を指定していない限り、現在のディレクトリの親ディレクトリ内で.qmake.cache というファイルが検索されます。qmake がこのファイルを見つけられなかった場合、この処理ステップは黙って無視されます。

qmakeが.qmake.cache ファイルを見つけた場合、プロジェクトファイルを処理する前に、まずこのファイルを処理します。

ファイル拡張子

通常、qmake はそのプラットフォームに適したファイル拡張子を使用しようとします。しかし、プラットフォームごとのデフォルト設定を上書きし、qmake が使用するファイル拡張子を明示的に定義する必要がある場合があります。これは、特定の組み込み変数を再定義することで実現できます。 たとえば、mocファイルに使用される拡張子は、プロジェクトファイル内で以下の代入文を用いて再定義できます。

QMAKE_EXT_MOC = .mymoc

qmake が認識する一般的なファイル拡張子を再定義するには、以下の変数を使用できます:

上記の変数はすべて最初の値のみを受け付けるため、プロジェクトファイル全体で使用される値を 1 つだけ割り当てる必要があります。値のリストを受け付ける変数は 2 つあります。

  • QMAKE_EXT_CPP は、qmake がこれらの拡張子を持つすべてのファイルを C++ ソースファイルとして解釈するようにします。
  • QMAKE_EXT_H は、qmake がこれらの拡張子を持つすべてのファイルを C および C++ ヘッダーファイルとして解釈するようにします。

© 2026 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.