我正在尝试为KDE4/Qt4项目创建CMakeLists.txt文件。目前这个项目中包含一个创建独立库的* .pri文件。我想将该库包含到我的CMakeLists.txt中。我没有任何想法如何做到这一点... 目前我* .pro文件看上去象下面这样:CMakeLists.txt和Qt的* .pri文件
include(utils/qtpropertybrowser/src/qtpropertybrowser.pri)
QT += core gui console xml
TARGET = photoframeseditor
TEMPLATE = app
SOURCES += main.cpp\
plugin/photoframeseditor.cpp \
....
HEADERS += plugin/photoframeseditor.h \
widgets/photo_context_menu.h \
....
LIBS += \
-L/usr \
-lkdeui \
-lkio \
-lkipi \
-lkdecore
INCLUDEPATH += \
plugin \
....
OTHER_FILES += \
resources/photoframeseditorui.rc \
resources/photoframeseditor.kcfg \
CMakeLists.txt \
resources/PFEConfigSkeleton.kcfgc
RESOURCES += \
resources/icons.qrc
而且的CMakeLists.txt
PROJECT(photoframeseditor)
FIND_PACKAGE(KDE4 REQUIRED)
INCLUDE(KDE4Defaults)
SET(INCLUDE_DIRS
./
./plugin
.....
)
INCLUDE_DIRECTORIES(${QT_INCLUDE} ${KDE4_INCLUDES} ${INCLUDE_DIRS})
# sources
SET(SAMPLE_SRCS
./main.cpp
.....
)
# moc headers
SET(SAMPLE_MOC_HDRS
./plugin/photoframeseditor.h
.....
)
SET(SAMPLE_RCS
./resources/icons.qrc
)
ADD_DEFINITIONS(-Wall)
SET(QT_USE_QTXML TRUE)
SET(QT_USE_QTCONSOLE TRUE)
FIND_PACKAGE(Qt4 REQUIRED)
INCLUDE(${QT_USE_FILE})
QT4_ADD_RESOURCES(SAMPLE_RC_SRCS ${SAMPLE_RCS})
QT4_WRAP_CPP(SAMPLE_MOC_SRCS ${SAMPLE_MOC_HDRS})
KDE4_ADD_EXECUTABLE(photoframeseditor ${SAMPLE_SRCS} ${SAMPLE_MOC_SRCS} ${SAMPLE_RC_SRCS})
TARGET_LINK_LIBRARIES(photoframeseditor ${QT_LIBRARIES} ${KDE4_KDEUI_LIBS} ${KDE4_KPARTS_LIBS} ./utils/qtpropertybrowser/src/qtpropertybrowser.pri)
KDE4_ADD_KCFG_FILES(photoframeseditor_SRCS ./resources/PFEConfigSkeleton.kcfgc)
INSTALL(FILES ./resources/PFEConfigSkeleton.kcfgc DESTINATION ${KCFG_INSTALL_DIR})
INSTALL(TARGETS photoframeseditor ${INSTALL_TARGETS_DEFAULT_ARGS})
终于有* .pri文件,我想包括到我的CMakeLists.txt
include(../common.pri)
INCLUDEPATH += $$PWD
DEPENDPATH += $$PWD
qtpropertybrowser-uselib:!qtpropertybrowser-buildlib {
LIBS += -L$$QTPROPERTYBROWSER_LIBDIR -l$$QTPROPERTYBROWSER_LIBNAME
} else {
SOURCES += $$PWD/qtpropertybrowser.cpp \
$$PWD/qtpropertymanager.cpp \
$$PWD/qteditorfactory.cpp \
$$PWD/qtvariantproperty.cpp \
$$PWD/qttreepropertybrowser.cpp \
$$PWD/qtbuttonpropertybrowser.cpp \
$$PWD/qtgroupboxpropertybrowser.cpp \
$$PWD/qtpropertybrowserutils.cpp
HEADERS += $$PWD/qtpropertybrowser.h \
$$PWD/qtpropertymanager.h \
$$PWD/qteditorfactory.h \
$$PWD/qtvariantproperty.h \
$$PWD/qttreepropertybrowser.h \
$$PWD/qtbuttonpropertybrowser.h \
$$PWD/qtgroupboxpropertybrowser.h \
$$PWD/qtpropertybrowserutils_p.h
RESOURCES += $$PWD/qtpropertybrowser.qrc
}
win32 {
contains(TEMPLATE, lib):contains(CONFIG, shared):DEFINES += QT_QTPROPERTYBROWSER_EXPORT
else:qtpropertybrowser-uselib:DEFINES += QT_QTPROPERTYBROWSER_IMPORT
}
感谢您的任何帮助提前!
非常感谢:-) –