在XCode 4.6中启用OpenMP支持

Enable OpenMP Support in XCode 4.6

本文关键字:启用 OpenMP 支持 XCode      更新时间:2023-10-16

Im当前使用最新版本的XCode,即4.6,并且在启用OpenMP时遇到问题。我在构建设置中看不到任何像"Enable OpenMP Support"这样的选项。我使用的是支持C++11的Apple LLVM Compiler 4.2libc++ LLVM C++标准库。任何帮助都将不胜感激。。

在构建设置中,我将"Compilers for C/C++/Objective-C"更改为"LLVM GCC 4.2"

然后,在"LLVM GCC 4.2-Language"设置下,您可以选择启用OpenMP。我还没有测试编译真正的代码,但至少"#include"现在可以工作了。

前面的用户说的都对,但他漏掉了一件事,这就是他不能包含"omp.h"的原因您必须在"库搜索路径"选项中提到库的路径。否则编译器无法自动定位它。因此步骤如下:

  1. 在构建设置中,我将"Compilers for C/C++/Objective-C"更改为"LLVM GCC 4.2"
  2. 然后,在"LLVM GCC 4.2-Language"设置下,您可以选择启用OpenMP
  3. 在"标头搜索路径"中,添加"omp.h"文件的位置
  4. 现在你完成了

复制以下代码并享受:

int main(int argc, char **argv) { 
    omp_set_num_threads(8);
    int iter;
    int NCOUNT = 100000000; 
#pragma omp parallel for
    for(iter = 0; iter < NCOUNT; iter++)
    {
        printf("OMP: Hello World, %d timesn", iter);
    } 
    return 0;
}

N.B:对于我的MAC计算机,我在"/usr/llvm-gcc-4.2/lib/gcc/i686-apple-darwin11/4.2.1/include"中找到了"omp.h"文件,这可能与您的情况不同,但我确信它必须在"/usr/.."中所以只需使用"find"操作来定位特定的文件。请注意,"/usr"是MAC系统中的一个隐藏文件夹,因此您必须激活系统才能显示隐藏的文件和文件夹。