qmakeのproファイルの書き方
proファイルの名前
hello.proを作成すると、プロジェクト名がhelloになり出来上がる実行ファイル名もhello.exeになる。
ソースファイルを追加
SOURCES変数にファイルを追加する。
1 2 |
SOURCES += main.cpp SOURCES += hello.cpp |
スペースで区切って複数指定してもいい、\ (バックスラッシュ)を行末につけて複数行にすることもできる。
1 2 |
SOURCES = main.cpp mainwindow.cpp \ paintwidget.cpp |
ヘッダファイルを追加
HEADERS変数にファイルを追加する。
1 |
HEADERS += header.h |
WindowsとLinuxで処理を分ける
1 2 3 4 5 6 |
win32 { SOURCES += hellowin.cpp } unix { SOURCES += hellounix.cpp } |
{ は条件と同じラインに書かなければならない。
ファイルが存在しないときにエラーを表示する
1 2 3 |
!exists( main.cpp ) { error( "No main.cpp file found" ) } |
デバッグモードを指定する
CONFIG変数にdebugと設定する。
1 |
CONFIG += debug |
WindowsのデバッグモードでqDebug()をコンソールに出力する
1 2 3 |
win32:debug { CONFIG += console } |
変数の設定と参照
変数は自分で書いてもいい。参照するには $$ を用いる。
1 |
TEMP_SOURCES = $$SOURCES |
インクルードパスの指定
1 2 |
win32:INCLUDEPATH += "C:/mylibs/extra headers" unix:INCLUDEPATH += "/home/user/extra headers" |
コメント
# で始めるとコメントになる。
1 2 |
# Comments usually start at the beginning of a line, but they # can also follow other content on the same line. |
プロジェクトのタイプを指定(アプリかライブラリか)
TEMPLATE変数を使う。
- app ⇒ アプリケーション
- lib ⇒ ライブラリ
デフォルトはapp
CONFIGにいろいろ設定
- qt ⇒ qtライブラリを使う
- windows ⇒ WindowsのGUIアプリケーション
- console ⇒ Windowsのコンソールアプリケーション
Qtライブラリを指定
QT変数を使う。
1 |
QT += network xml |
coreとguiはデフォルトで設定される。デフォルトから外したいときは += ではなく = を使う。あるいは -= を使う。
1 |
QT -= gui # Only the core module is used. |
Featureを使う
Featureとは.prfで記述される特別な機能。CONFIGに機能を設定して使用する。
1 2 |
CONFIG += link_pkgconfig PKGCONFIG += ogg dbus-1 |
pkg-configを利用して、D-Busとoggライブラリを利用する。
Qt以外のライブラリの指定
1 |
LIBS += -L/usr/local/lib -lmath |
ライブラリをつくる
ライブラリをつくるにはTEMPLATE変数にlibを設定する。そのうえでCONFIG変数でライブラリのタイプを指定する。
- dll ⇒ ライブラリはDLL
- staticlib ⇒ ライブラリはスタティックライブラリ
- plugin ⇒ ライブラリはプリグイン
環境変数の取得
$$(ENVVAL)を使う。
1 2 |
DESTDIR = $$(PWD) message(The project will be installed in $$DESTDIR) |