0

一般的な質問は次のように定式化できます-静的ライブラリlib1が別の静的ライブラリlib2に依存している場合、lib2をlib1のリンカー依存関係として指定する必要がありますか、またはライブラリがアプリケーションに対してリンクされている場合にのみリンク依存関係を指定する必要があります(そしてすべてのlib2 を使用するアプリケーションは、lib1 にもリンクする必要があります)?

具体的には、次のようないくつかの依存関係を持つ静的ライブラリとアプリケーションがたくさんあります。

makeall.pro:

TEMPLATE = subdirs
CONFIG += ordered
SUBDIRS = coreLib \
    anotherLib \
    ....
    someApp

anotherLib.depends = coreLib 
someApp.depends = coreLib anotherLib

coreLib.pro

TEMPLATE = lib
CONFIG += staticlib
TARGET = coreLib
#... some .cpp and .h

anotherLib.pro

TEMPLATE = lib
CONFIG += staticlib
INCLUDEPATH += PATH_TO_CORE_LIB_INCLUDES
DEPENDPATH += PATH_TO_CORE_LIB_INCLUDES
TARGET = anotherLib

#問題の行

someApp.pro

TEMPLATE = app
DESTDIR = ..\bin
INCLUDEPATH += PATH_TO_CORE_LIB_INCLUDES PATH_TO_ANOTHER_LIB_INCLUDES
DEPENDPATH += PATH_TO_CORE_LIB_INCLUDES PATH_TO_ANOTHER_LIB_INCLUDES

#問題の行

問題の行には何を使用すればよいですか:


anotherLib.pro

(nothing required)

someApp.pro

PRE_TARGETDEPS += ../bin/coreLib.lib ../bin/anotherLib.lib

また:


Ⅱ.anotherLib.pro

PRE_TARGETDEPS += ../bin/coreLib.lib

someApp

PRE_TARGETDEPS += ../bin/anotherLib.lib

また


III. anotherLib.pro

PRE_TARGETDEPS += ../bin/coreLib.lib

someApp.pro

PRE_TARGETDEPS += ../bin/coreLib.lib ../bin/anotherLib.lib
4

2 に答える 2