5

これは非常に単純であるべきもののように思えますが、期待どおりに実行する方法はないようです。

Qt Creator で 2 つの個別の C++ プロジェクトを開いています。一方のプロジェクトに対して他方のプロジェクトをインクルード/コンパイルしたいと考えています。

これが私のレイアウトです:

project_a/
    project_a.pro
    someheaders.h
    somecode.cpp
    main.cpp

project_b/
     project_b.pro
     someheaders.h
     somecode.cpp
     main.cpp

基本的に、project_a のファイルをプロジェクト b にインクルードできるようにしたいと考えています。project_a を project_b 内の依存関係に設定しましたが、2 つのプロジェクトを使用する手段としてはまったく効果がないようです。私は何をしますか?

4

1 に答える 1

5

両方のプロジェクトを 1 つとして開いてビルドするには、 type で meta-project を使用しますsubdirs

TEMPLATE = subdirs
SUBDIRS += project_a project_b
# Use ordered build, from first subdir (project_a) to the last (project_b):
CONFIG += ordered

subprojectany_name.proを directoryに配置し、このディレクトリを meta-projectファイルany_nameの隣に配置する必要があります。.pro

他のプロジェクトのヘッダーを含める場合は、次のようproject_a.priなファイルを記述します。

# PWD expands to directory where project_a.pri placed.
INCLUDEPATH += $$PWD/
INCLUDEPATH += $$PWD/network

このファイルを project_b.pro にインクルードするより:

include(../project_a/project_a.pri)

project_a をライブラリとして使用する場合は、エディタで開いたTEMPLATE = libときにコンテキスト メニューで使用できるように変更し、ウィザードでライブラリを追加します。project_b.pro

于 2013-06-02T05:32:23.687 に答える