如何在 Mac 上将 #include <random> 与 g++ 一起使用?

Posted

技术标签:

【中文标题】如何在 Mac 上将 #include <random> 与 g++ 一起使用?【英文标题】:How to use #include <random> with g++ on a Mac? 【发布时间】:2012-10-07 20:19:26 【问题描述】:

我正在尝试编译从别人那里得到的 c++ 程序。它是在 windows 上开发的,g++ 给出了一些编译错误。其中之一是与

#include <random>

这会产生以下错误:CandidateSolution.cpp:2:18: error: random: No such file or directory。我试图找到可以从中获取 error.h 文件的位置,但我找不到它。我怎样才能让它工作?

【问题讨论】:

请注意,编译器的错误是告诉您在查找名为 random 的头文件时出错,而不是在寻找名为 error.h 的文件 ;-) 【参考方案1】:

该头文件是 C++11 的新内容。尝试使用-std=c++11-std=c++0x。另外,请确保您的编译器是最新的。

【讨论】:

我应该把它放在代码中吗?我在命令行Niek$ g++ *.cpp -std=c++0x 上试过了,但是没有用。 不起作用,因为它抱怨 -std=c++0x 还是标题?如您所料,-std=c++0x 应该在命令行中。 我收到以下cc1plus: error: unrecognized command line option "-std=c++0x" 试试 -std=c++11,如果两者都不起作用,你需要更新你的 g++ 版本。 (此外,了解您的 gcc 版本也会有所帮助,请运行 g++ -v 以获取此信息。 显然这是使用旧版本 gcc 的 mac 的问题。请参阅:***.com/questions/10480654/std-gnu0xoption-for-macos。 4.2.1 已经足够老了,根本不支持任何 C++11。

以上是关于如何在 Mac 上将 #include <random> 与 g++ 一起使用?的主要内容,如果未能解决你的问题,请参考以下文章

如何在 Mac 上将 Raspbian 安装到 SD 卡

如何在 mac 上将 docker 存储驱动程序更改为 devicemapper

如何在 Ubuntu 16.04 上将 Ms SQL 服务器与 R 连接?

R将结果保存在mac上的word文档中

如何在 MacOS High Sierra 上将 X11 链接到 qt 项目

如何在 Mac 上将 openCV 安装到 Enthought python 发行版中