Qtの「proファイルと、priファイル」
Qtのプロジェクトを始める前にproファイルや、priファイルについて説明します。
デフォルトの状態でqtのファイルを立ち上げるとこのような状態になります。
新しいソースコードをqt Createrで作成すると、この中に無秩序にソースコードが入っていきます。
これでは、どこに何のファイルがあるかよくわからなくなってしまうので、フォルダーごとに区切って管理していきたい。
理想的には、こんな感じ
解決策
qt Createrは、ファイル/ディレクトリーの関係を.proファイルまたは、.priファイルを見て管理しているらしいです。
ということでこの.proファイルまたは、.priファイルをごにょごにょと、いじればよさそうですね。
.proファイルと、.priファイルの違い、
.proファイル
拡張子が.pro のファイルは、project ファイルと呼びます。
このファイルは、Qmakeを実行するものです。
またQtのプロジェクトを開くには、この.proファイルを開くことで、プロジェクトを開くことができます。.priファイル
拡張子が.priファイル のファイルはProjectInclude Fileと呼ばれます。
.priは名前の通りインクルードファイルです。
これには、C++でメインのプロジェクトと、いくつかのライブラリーにより構成されるプログラムと同じようなものです。
これらの.pro ファイルにプロジェクト共通の設定とコードを記述し、必要に応じていくつかの.priファイルを含めることができます。これは、実際によく使われます。
.proファイル、.priファイルの書き方
.proファイル、.priファイルの記述方法は、まったく同じです。
基本的な操作について最初に学びます。
コメントの仕方
プロジェクトファイル内でコメントを書きたい場合は、普通のmakeファイルや、bashファイルのように#以降の行がコメントになります。
QT += core #ここがコメントです。
変数の宣言
変数は、変数名と価を = または、+= で結ぶことで価を代入します。
複数宣言する場合には、バックスラッシュ\で区切ります。
QT += gui MACRO = "debug"
カレントディレクトリの扱い方
$$PWDをつけることでカレントディレクトリとして扱えます。
$$PWD/src
この場合は、同じファイル内にあるsrcというフォルダーを指定します。
デフォルトの変数
Qtには、多くのデフォルトで設定すべき変数があります
プロジェクトで使用されるファイルについて説明します。
QT
QTのモジュールを使用するときに使用します。
以下のようなモジュールがあります。
- core
- gui
- network
- opengl
- svg
- xml
TARGET
生成する実行ファイル名を指定します。
デフォルトで、プロジェクト名になります。
TEMPLATE
makefileの種類を指定します
app
アプリケーションとしてビルドするlib
ライブラリーとしてビルドする
SOURCES
Projectで使用するソースファイルを指定します。
SOURCES += \ src/main.cpp \ src/AppConfig.cpp \ src/MainWindow.cpp \
HEADERS
ヘッダーファイルを読み込む
HEADERS += \ src/MainWindow.h \
FORMS
gui ファイルを読み込む
FORMS += \ src/MainWindow.ui \
RESOURCES
画像ファイルなどのリソースを読み込む
RESOURCES += \ resources/resources.qrc
INCLUDEPATH
指定されたディレクトリをヘッダファイルを探索するリストとして使います。
上記のような構成の場合 a.cppや、b.cppからab.hを#includeする場合
#include "../dir_h/ab.h"
と書く必要がありますが .proファイル、.priファイル
INCLUDEPATH += $$PWD/src
このように書くことで、 a.cppや、b.cppの#includeを
#include "ab.h"
と記述することができます。
LIBS
ライブラリーを追加する。
オプションを使う必要がある場合は、付ける。
LIBS += -L$$PWD/lib/SDL2/x64 -lSDL2
include(xxx.pri)
別のプロジェクトなどを、現在使用しているプロジェクトに追加することができる。
最後に
今回は、力尽きましたので、フォルダーをいい感じにまとめる方法については、次回に書いていきたいと思います。