c++ - Mac 上的 OpenMP 不再工作

标签 c++ xcode gcc clang openmp

我在我的 Mac 上用 C/C++ 编译和执行了 OpenMP,但后来我格式化并重新安装了 OS X 的新拷贝。我相信设置中的唯一区别是我在格式化之前有 Xcode 5,现在我有 Xcode 6。

现在我得到fatal error: 'omp.h' file not found

我读到这与 clang 和 gcc 有关,但是,我的困惑在于为什么它以前有效,现在却不起作用?

最佳答案

经过一些研究,我似乎找到了答案。

最新版本的 Xcode (Xcode 6) 中包含的 GCC 只是 clang 的符号链接(symbolic link)。由于clang目前不支持OpenMP,需要安装不同版本的GCC。最简单的方法是使用 Homebrew 或 MacPorts。

请记住,即使您这样做,您也可能需要更改您的 $PATH 以使 /usr/local 位于 /usr/bin 之前。这是因为 Homebrew 会将您新安装的 GCC 放在 /usr/local 中。此外,某些实现可能会将命令命名为 gcc-49 而不是普通的 gcc

关于c++ - Mac 上的 OpenMP 不再工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27853434/

相关文章:

c++ - C++中文件数据的动态分配

windows - 使用 GCC-4.9.1_x64 编译 Clang 时命令语法不正确

c++ - 在堆栈已满并给出段错误之前,C/C++ 中的最大递归函数调用?

c++ - C++ 是否对 POD typedef 进行值初始化?

swift - 我如何比较 Swift 3 中的两个日期 (NSDate) 并获得它们之间的日期?

objective-c - 查看 Objc 文件的 swift 界面

c++ - 标准库是否需要符合标准?

C 通用宏名称 - gcc -fextended-identifiers

c++ - OpenGL gluLookat 无法使用着色器

ios - 条件绑定(bind)的初始化程序必须具有 Optional 类型,而不是 'NSManagedObjectContext