I was able to build a Qt CuteLogger project using cmake. Following is the code, pretty much what is explained in https://github.com/dept2/CuteLogger .
I guess I can also use cutelogger in non cmake projects, like qmake or even in visual studio. May I ask for instructions on how to do that?
I'm new to both cmake.
main.cpp
#include <QCoreApplication>
#include <Logger.h>
#include <ConsoleAppender.h>
int main(int argc, char* argv[])
{
QCoreApplication app(argc, argv);
ConsoleAppender* consoleAppender = new ConsoleAppender;
consoleAppender->setFormat("[%{type:-7}] <%{Function}> %{message}\n");
cuteLogger->registerAppender(consoleAppender);
LOG_INFO("Starting the application");
int result = app.exec();
if (result)
LOG_WARNING() << "Something went wrong." << "Result code is" << result;
return result;
}
CMakeLists.txt
cmake_minimum_required(VERSION 3.14)
project(untitled3 LANGUAGES CXX)
set(CMAKE_INCLUDE_CURRENT_DIR ON)
set(CMAKE_AUTOUIC ON)
set(CMAKE_AUTOMOC ON)
set(CMAKE_AUTORCC ON)
set(CMAKE_CXX_STANDARD 11)
set(CMAKE_CXX_STANDARD_REQUIRED ON)
find_package(Qt5Core)
add_executable(untitled3
main.cpp
)
target_link_libraries(untitled3 Qt${QT_VERSION_MAJOR}::Core)
ADD_SUBDIRECTORY(Logger)
TARGET_LINK_LIBRARIES(untitled3 CuteLogger)
A simple solution is to create a.pri that includes the.cpp and.h:
├── 3rdParty
│ ├── CuteLogger
│ │ ├── CMakeLists.txt
│ │ ├── CuteLogger.pro
│ │ ├── CuteLogger.qbs
│ │ ├── Doxyfile
│ │ ├── include
│ │ │ ├── AbstractAppender.h
│ │ │ ├── AbstractStringAppender.h
│ │ │ ├── AndroidAppender.h
│ │ │ ├── ConsoleAppender.h
│ │ │ ├── CuteLogger_global.h
│ │ │ ├── FileAppender.h
│ │ │ ├── Logger.h
│ │ │ ├── OutputDebugAppender.h
│ │ │ └── RollingFileAppender.h
│ │ ├── LICENSE.LGPL
│ │ ├── README.md
│ │ ├── src
│ │ │ ├── AbstractAppender.cpp
│ │ │ ├── AbstractStringAppender.cpp
│ │ │ ├── AndroidAppender.cpp
│ │ │ ├── ConsoleAppender.cpp
│ │ │ ├── FileAppender.cpp
│ │ │ ├── Logger.cpp
│ │ │ ├── OutputDebugAppender.cpp
│ │ │ └── RollingFileAppender.cpp
│ │ └── test
│ │ └── basictest.cpp
│ └── CuteLogger.pri
├── 65231036.pro
└── main.cpp
CuteLogger.pri
INCLUDEPATH += $$PWD/CuteLogger/include
SOURCES += $$PWD/CuteLogger/src/Logger.cpp \
$$PWD/CuteLogger/src/AbstractAppender.cpp \
$$PWD/CuteLogger/src/AbstractStringAppender.cpp \
$$PWD/CuteLogger/src/ConsoleAppender.cpp \
$$PWD/CuteLogger/src/FileAppender.cpp \
$$PWD/CuteLogger/src/RollingFileAppender.cpp
HEADERS += $$PWD/CuteLogger/include/Logger.h \
$$PWD/CuteLogger/include/CuteLogger_global.h \
$$PWD/CuteLogger/include/AbstractAppender.h \
$$PWD/CuteLogger/include/AbstractStringAppender.h \
$$PWD/CuteLogger/include/ConsoleAppender.h \
$$PWD/CuteLogger/include/FileAppender.h \
$$PWD/CuteLogger/include/RollingFileAppender.h
win32 {
SOURCES += $$PWD/CuteLogger/src/OutputDebugAppender.cpp
HEADERS += $$PWD/CuteLogger/include/OutputDebugAppender.h
}
android {
SOURCES += $$PWD/CuteLogger/src/AndroidAppender.cpp
HEADERS += $$PWD/CuteLogger/include/AndroidAppender.h
}
* .pro
QT -= gui
CONFIG += c++11 console
CONFIG -= app_bundle
SOURCES += main.cpp
include(3rdParty/CuteLogger.pri)
The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.