Qt、Qbs:MOC_FILENAMEを生成します。自動的にcpp
質問
だから私はq_OBJECTタグ付けされたクラスを持っています。使用可能であるmoc。
私の中で。qbsファイル、私は持っています CppApplication
アイテム;qbsが呼び出さないため、これは間違ったタイプのプロジェクトのようです moc ClassName.cpp
私のためにmocを生成する。代わりに何を使用/微調整する必要がありますか?
-
だから私はQtについて知っていました。コアの依存関係ですが、Qtの不自由なインストールでは機能していませんでした;私はそれを修正しようとしていたが、これらの事実が出てきた:
- Qt toolchainを検出する必要がありました(
qbs-setup-qt
)と呼びます。qbs-config-ui
- Qbsは実際にビルドルールをコアに格納します。Qbs、Qt/core依存関係を介してリンクされています。
- ビルドルールを自分のものにコピー/貼り付けることは可能です。qbsファイルと外部依存関係の回避;私はこれを本当に不自由なビルドシステムにコードを展開するための汚いハックと考えています(今、私はGentooでQtサポートの言葉を持っています)。
解決
Qtモジュールへのアプリケーションの依存関係が欠落している可能性があると思います。Mocファイルの生成のためのルールはQtの一部です。コアモジュール。この依存関係を次のように追加することができます:
CppApplication {
name: "MyApp"
files: "path_to_source/**"
Depends { name: "Qt.core" } // Optional
Depends { name: "Qt.widgets" }
}
他のすべてのQtモジュールはQtに暗黙的に依存しています。コア明示的な依存関係はQtに可能性があります。別のQtモジュール(Qt)に依存している場合、コアはスキップされる可能性があります。この例のウィジェット)。
より多くの細部はで見つけることができます http://doc.qt.io/qbs/qt-modules.html
所属していません StackOverflow