!!版权声明:本文为博主原创文章,版权归原文作者和博客园共有,谢绝任何形式的 转载!!

作者:mohist

注意️ 请选择对c++11支持较为完善的编译器,因为spdlog一直更新。

  

   本机演示环境中并没有使用homebrew安装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代码:

  1. #include <iostream>
  2. #include "spdlog/spdlog.h"
  3. #include "spdlog/sinks/rotating_file_sink.h"
  4.  
  5. void rotating_example()
  6. {
  7. // Create a file rotating logger with 5mb size max and 3 rotated files
  8. auto max_size = 1048576 * 5;
  9. auto max_files = 3;
  10. auto logger = spdlog::rotating_logger_mt("log_file", "logs/rotating.txt", max_size, max_files);
  11.  
  12. for (int index = 0; index < 10; index++)
  13. {
  14. logger->info("index = {}", index);
  15. spdlog::info("index = {}", index);
  16. }
  17. }
  18.  
  19. int main(int argc, char *argv[])
  20. {
  21. rotating_example();
  22. spdlog::info("hello world!");
  23.  
  24. return 0;
  25. }

  C、使用clang++ 编译输出 

  回到spdlog解压目录,将spdlog源码目录下的 inlcude 目录拷贝到创建的cmd_demo文件夹下 。 目录结构如下:

  终端录入并执行:

  1. clang++ -o main main.cpp -I"./include" -std=c++11

  查看输出,发现 生成 main

  D、执行 main, 可见 输出 和 日志文件

日志文件输出

------完---------

  本文仅作参考,请以实际情况为准

mac OSX使用spdlog1.7的更多相关文章

  1. mac osx下django-admin.py出现的问题

    mac osx 下面用django-admin.py创建项目的时候,没创建成功出现django-admin.py编辑文件,这主要的原因是mac osx下面django-admin.py被重命名为dja ...

  2. mac osx 上面部署Django项目 apache+mysql+mod_wsgi

    1.安装Xcode command line tools 首先,编译mysql和Homebrew需要用到Xcode command line tools,所以首先安装command line tool ...

  3. Webstorm 10 for mac osx 注册机,序列号,kegen

    小菜最近get到mac体验机会,早就耳闻mac非常适合做开发,于是迫不及待的安装各种开发工具,不知不觉,轮到前端开发神器webstorm了,看了一下官网的价格,心拔凉拔凉的. 果断搜索注册机,搜到的结 ...

  4. Mac OSX网络诊断命令

    作者:Vamei 出处:http://www.cnblogs.com/vamei 欢迎转载,也请保留这段声明.谢谢! 下面是一些Mac OSX下常用的网络诊断命令.它们能帮助我们发现网络问题.文中提到 ...

  5. Mac OSX上的软件包管理工具,brew 即 Homebrew

    brew 即 Homebrew,是Mac OSX上的软件包管理工具,能在Mac中方便的安装软件或者卸载软件, 只需要一个命令, 非常方便. brew类似ubuntu系统下的apt-get的功能. 安装 ...

  6. Install Ansible on Mac OSX

    from: https://devopsu.com/guides/ansible-mac-osx.html and : https://devopsu.com/guides/ansible-post- ...

  7. 更新Mac OSX XCode后Git 不能使用提示Can't start Git: /usr/bin/git

    更新Mac OSX XCode后Git 不能使用提示Can't start Git: /usr/bin/git 解决办法: 终端运行 sudo xcodebuild -license 同意协议就好了.

  8. Mac OSX下卸载Nodejs

    有时手贱看到新版本就升级,升级后发现一堆模块不能用了,心情好慢慢调,但也有调不好的时候,只能卸载重装低版本的node了. 我的机器环境如下 1. Mac OSX 10.10.3 2. node为0.1 ...

  9. Installing Hadoop on Mac OSX Yosemite Tutorial Part 1.

    Installing Hadoop on Mac OSX Yosemite Tutorial Part 1. September 23, 2014 Marek 68 Comments Install ...

随机推荐

  1. HDU 6116 路径计数

    HDU 6116 路径计数 普通生成函数常用于处理组合问题,指数生成函数常用于处理排列问题. 考虑 对于 $ a $ 个 $ A $ 分为很多堆,这么分的方案数是 $ C_{a-1}^{i-1} $ ...

  2. wget 命令用法

    wget 命令用法 1. 用法/命令格式 wget [OPTION]... [URL]... wget [参数列表] [目标软件.网页的网址] 长选项所必须的参数在使用短选项时也是必须的 2. 常用参 ...

  3. Xwiki——实现

    基于CentOS6.9 yum install java wget http://download.forge.ow2.org/xwiki/xwiki-enterprise-installer-gen ...

  4. 一次“不负责任”的 K8s 网络故障排查经验分享

    作者 | 骆冰利 来源 | Erda 公众号 ​ 某天晚上,客户碰到了这样的问题:K8s 集群一直扩容失败,所有节点都无法正常加入集群.在经过多番折腾无解后,客户将问题反馈到我们这里,希望得到技术支持 ...

  5. acute

    In Euclidean geometry, an angle is the figure formed by two rays, called the sides of the angle, sha ...

  6. Hive(七)【内置函数】

    目录 一.系统内置函数 1.查看系统自带内置函数 2.查看函数的具体用法 二.常用内置函数 1.数学函数 round 2.字符函数 split concat concat_ws lower,upper ...

  7. 商业爬虫学习笔记day4

    一.获取登录后页面信息的两种方法 1.第一种方法: 人为把有效cookies加到请求头中,代码如下 import urllib.request # 确定url url = "https:// ...

  8. 分配器——allocators

    任何容器的构建都离不开分配器,分配器顾名思义就是分割配置内存资源的组件,分配器的效率直接影响力容器的效率. operator new()和malloc() C/C++底层都是通过malloc()调用系 ...

  9. 转 android design library提供的TabLayout的用法

    原文出处:http://chenfuduo.me/2015/07/30/TabLayout-of-design-support-library/ 在开发中,我们常常需要ViewPager结合Fragm ...

  10. ClassLoad类加载器与双亲委派模型

    1. 类加载器 Class类描述的是整个类的信息,在Class类中提供的方法getName()是根据ClassPath配置的路径来进行类加载的.若类加载的路径为文件.网络等时则必须进行类加载这是就需要 ...