注意?? 请选择对c++11支持较为完善的编译器,因为spdlog一直更新。
本文将介绍mac osX 10.14.6使用clang++编译main.cpp中使用的spdlog代码.
1、准备
A、spdlog源码:https://github.com/gabime/spdlog
B、clang++, 没安装? 可以通过安装Xcode新版 或者 参看: https://clang.llvm.org/cxx_status.html
2、解压
将下载的spdlog源码, 解压。
3、创建main.cpp文件
A、打开终端,我这里演示来到桌面, 创建文件夹cmd_demo,并创建main.cpp。
B、使用VSCode打开并键入代码, 见下图。 代码如下。
main.cpp代码:
#include <iostream>
#include "spdlog/spdlog.h"
#include "spdlog/sinks/rotating_file_sink.h"
void rotating_example()
{
// Create a file rotating logger with 5mb size max and 3 rotated files
auto max_size = 1048576 * 5;
auto max_files = 3;
auto logger = spdlog::rotating_logger_mt("log_file", "logs/rotating.txt", max_size, max_files);
for (int index = 0; index < 10; index++)
{
logger->info("index = {}", index);
spdlog::info("index = {}", index);
}
}
int main(int argc, char *argv[])
{
rotating_example();
spdlog::info("hello world!");
return 0;
}
C、使用clang++ 编译输出
回到spdlog解压目录,将spdlog源码目录下的 inlcude 目录拷贝到创建的cmd_demo文件夹下 。 目录结构如下:
终端录入并执行:
clang++ -o main main.cpp -I"./include" -std=c++11
查看输出,发现 生成 main
D、执行 main, 可见 输出 和 日志文件
日志文件输出
------完---------
本文仅作参考,请以实际情况为准