C++:MAC安装Boost库文件并且使用CLion开发

19 篇文章 1 订阅
4 篇文章 0 订阅

boost的filestem库

  • C++在17版本的标准库中引入了一个filesystem库,用来处理文件路径,以及文件访问。很多编译器对filesystem库的支持还不是很好。为了解决这个问题,可以临时使用boost::filesystem来替代。
  • 其实C++17标准中的filesystem库就是从boost::filesystem演进而来的,使用boost::filesystem有助于以后平滑演进到C++17的filesystem库。
  • boost(当前最新的版本是1.74.0)是一大堆库的集合,fiesystem只是其中的一个库。

boost上手文档

boost::filestem入门教程

在MAC上安装boost库文件

  • 使用命令 brew install boost

 

在clion中对其进行配置

  •  在CMakeLists.txt中对于boost部分进行配置
  • find_package(Boost 1.74.0 REQUIRED COMPONENTS filesystem)
  • cmake对boost有很好的支持,上面的指令翻译如下:1,find_package(Boost 1.69.0 查找系统的boost, 目标版本是1.74.0;2,REQUIRED COMPONENTS filesystem) COMPONENTS用来限定boost的filesystem模块,REQUIRED表明必须找到指定的模块,否则会出错
  • 上面的find_package命令如果找到boost::filesystem,会在cmake中设置一些变量,比如Boost_LIBRARIES、Boost_INCLUDE_DIRS,需要在编译目标上使用这些变量。

其余的配置选项参考如下

cmake_minimum_required(VERSION 3.16)
project(KeyManager)

set(CMAKE_CXX_STANDARD 11)

find_package(Boost 1.74.0 REQUIRED COMPONENTS filesystem)
include_directories(${Boost_INCLUDE_DIRS})

add_executable(KeyManager include/sdf/sdf.h include/sdf/SqliteManager.h
        src/SqliteManager.cpp
        src/test.cpp include/sdf/KMException.h src/KMException.cpp include/sdf/logging.h src/logging.cpp src/KeyManager.cpp)
  • 最为核心的是find_package和include_directories

具体使用

#include <iostream>
#include <boost/version.hpp>

using namespace std;

int main() {
    cout << "Hello, World!" << endl;
    cout << "Boost版本:" << BOOST_VERSION << endl;
    return 0;
}

参考链接

  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值