Qt コマンド プロンプトから次のコマンドを実行する必要がありますqmake -project
。make
これにより、Moc ファイルを含むデバッグ フォルダーが表示されます。
奇妙なことに、これが私の PC がmoc_.cpp
ファイルを生成する唯一の方法です。
では、これらのコマンドのタスクを自動化して、これらのコマンドを再度使用する必要がないようにするにはどうすればよいでしょうか?
qmake -project
複数回実行しないでください。この-project
オプションは、編集用のテンプレートプロジェクトファイルを提供することを目的としています。IDEで行っていることと同等のことは、ビルドするたびに「新しいプロジェクト」を作成することです。最初のプロジェクトを作成したら、手動で編集したり、新しいファイルがあるときにファイルを追加したりする必要があります。ヘッダーファイルが変更された場合、生成されたMakefileはそれを認識し、mocを呼び出してmoc_*。cppファイルを自動的に更新します。それで:
qmake -project
プロジェクトの作業を開始するときに実行します。qmake
Makefileを生成するときに実行します。make
プロジェクトをビルドするときに実行します。2つの選択肢があると思います。
親のmakeプロセスからqmakeを呼び出し、マルチレベルのビルドを実行します。(「再帰的作成」。)
makefileのルールからメタオブジェクトコンパイラを直接実行します
2番目の場合は、メタオブジェクトコンパイラの使用に関するこのページが役立つ場合があります。