首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >MacOSX10.8.2( C++11 )上缺少的C++11头(MountainLion)

MacOSX10.8.2( C++11 )上缺少的C++11头(MountainLion)
EN

Stack Overflow用户
提问于 2015-03-20 21:09:56
回答 1查看 2.7K关注 0票数 0

我是麦克的新手。我有一些Linux和Windows源代码,它使用的是Boost,我想在这个C++11上构建它。安装了MacPort (我应该使用国产吗?)然后成功地运行命令,如:

代码语言:javascript
复制
sudo port install cmake
sudo port install boost
sudo port install openssl
sudo port install gcc49
sudo port install gcc_select
sudo port install --set gcc mp-gcc49

CMake正确地找到Boost 1.57.0并设置makefile。但是,当我运行make时,它似乎找不到正常的C++11头,比如“run”:

代码语言:javascript
复制
In file included from ../src/test.cpp:10:
../src/test_private.hpp:33:10: fatal error: 'chrono' file not found
#include <chrono>
         ^
1 error generated.

实际上,当我去寻找C++头文件时,我在/usr/include/c++/4.2.1/中看到了其中的一些文件,但是缺少新的文件,比如chronothread

在我可以在Mac上编译C++11源代码之前,还需要安装另一个包吗?

EN

回答 1

Stack Overflow用户

发布于 2015-03-20 21:22:27

Apple提供的编译器/工具Xcode附带了两个std::lib的实现:

  1. gcc的libstdc++,4.2版。
  2. libc++

第一个是非常非常老的,并且不支持C++11中的任何东西,比如<chrono>。第二种方法很好地支持C++11,但只能与clang一起使用,而不能用于gcc。clang随Xcode而来。

安装Xcode之后,还需要安装命令行工具:

代码语言:javascript
复制
xcode-select --install
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/29175846

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档