在mac os 和 windows 同时使用 c++ 17 filesystem的问题

本文介绍在MacOS环境下,使用Xcode遇到C++ filesystem库缺失的问题,并提供解决方案,即通过安装Boost并使用boost::filesystem来替代。文章详细描述了如何通过Homebrew安装Boost,以及在Xcode中配置所需的头文件和库路径。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

                                                           filesystem 新特特性怎么在mac下不能用?  

     如果在windows 和 max os下边使用filesystem 我现在在vs2017上边使用 filesystem一切正常,但是在xcode 里边就不对,找不到头文件。

     解决方法: 在mac os 下用 xcode 里边用 boost::filesystem 替代。

1. 在mac os 里边 安装 boost

I followed henrikstroem's great post, like this:

Install via homebrew, took less than 3 minutes

mac:~ woz$ brew install boost
==> Downloading https://downloads.sf.net/project/machomebrew/Bottles/boost-1.57.0.yosemite.bottle.tar.gz
######################################################################## 100.0%
==> Pouring boost-1.57.0.yosemite.bottle.tar.gz
?  /usr/local/Cellar/boost/1.57.0: 10572 files, 439M
mac:~ woz$

Create symlink in your homedir

mac:~ woz$ cd
mac:~ woz$ ln -s /usr/local/Cellar/boost/1.57.0 boost_1_57_0
mac:~ woz$ 

Inside Xcode refer to the just created symlink like this

Xcode build settings for boost

For the Header Search Paths use $(HOME)/boost_1_57_0/include

For the Library Search Paths use $(HOME)/boost_1_57_0/lib

 

2. 在代码里这么写就可以了

#include <boost/filesystem.hpp>

namespace fs = boost::filesystem;

结果: 问题奇怪,在mac 下就是找不到头文件,现在用上边的方法可以通过了,但原因未知。

感觉现代的c++真是好用,有了这些东东,就可以横行天下了 ^-^。

  

  

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值