8

現在、QtCreatorはアプリケーションのルート フォルダーに.o および moc_ファイルを作成します。プロジェクトファイルに「obj」というサブフォルダーに配置するように指示するにはどうすればよいですか?

4

2 に答える 2

9

OBJECTS_DIRこれには、およびMOC_DIR変数を使用できます。たとえば、Qt自体は、ビルド中に次のようなことを行います。

OBJECTS_DIR = .obj
MOC_DIR     = .moc

この場合、.obj、.mocディレクトリは、Makefileを含むディレクトリに相対的であると思います。

于 2011-05-30T22:29:39.353 に答える
3

メイン (ソース) フォルダーにバイナリ ファイルと生成されたファイルをクリーンな状態に保つには、「myapp.pro」ファイルに次の行を追加します。

DESTDIR = ../../bin
UI_DIR = .

CONFIG(debug, debug|release) {
        TARGET = myappd
        OBJECTS_DIR = ../../build/myapp/debug
        MOC_DIR = ../../build/myapp/debug
}

CONFIG(release, debug|release) { 
        TARGET = myapp
        OBJECTS_DIR = ../../build/myapp/release
        MOC_DIR = ../../build/myapp/release
}

上記の設定は、次のディレクトリ構造を意味します。

myprojects/source/myapp/   => containing myapp.pro + all other project files hpp, cpp etc.
myprojects/bin/  => containing myapp.exe & myappd.exe application files
myprojects/build/myapp/release  => object files + moc files (release)
myprojects/build/myapp/debug   => object files + moc files (debug)

最後の 3 つのディレクトリが存在しない場合は、自動的に作成されます。

このスキーマの利点は次のとおりです。

を。プロジェクト (myapp ディレクトリ) を別の親ディレクトリに移動することができ、bin およびビルド ディレクトリの相対的な指定により、引き続き正常にビルドされます。

b. myprojects/source/ の下にさらにサブプロジェクトを追加できます

c. バイナリまたは生成されたファイルを含めずに、すべての myprojects/source/ ディレクトリをバックアップ (ZIP など) できます。

于 2011-06-01T01:19:45.850 に答える