我使用“Subdirs”模板,头库和测试控制台应用程序创建qmake项目 .
Main.pro :
TEMPLATE = subdirs
CONFIG -= app_bundle
CONFIG -= qt
CONFIG += ordered
SUBDIRS += tests Config
Config.pro :
HEADERS += \
Reader.h \
Builder.h\
Store.h\
Setter.h
tests.pro :
HEADERS += \
CheckConfig.h \
CheckReader.h \
JsonGenerator.h \
Setter.h
SOURCES += \
CheckReader.cpp \
JsonGenerator.cpp \
main.cpp \
Setter.cpp
#my util functions and vars
include(../common/settings.pri)
include(../common/common.pri)
#generate application config
ConsoleApplication(test)
#enable flags for exports libs in depends.pri file
EnableModuleExport()
include(../Config/depends.pri)
#setup includepath for Config library
SetHeadersPath(../)
qmake为项目Config.pro生成makefile,在使用gcc运行构建之后,我有错误 . 没关系,因为我没有询问构建目标而没有函数main() . 必须禁用为qmake生成Makefile,或生成没有生成目标的makefile .
我把项目Config作为假静态库,但它不是最好的解决方案
3 回答
在Headear-only库中需要使用require(false)
@Kopysov Evgeniy
要求(false)阻止安装目标也运行!仍然需要安装仅头文件库 .
评论系统对我不起作用,因此需要以下几行: