2010-05-24 48 views
6

目前,我上了XCode 3.2.2在Snow Leopard上尝试的OpenMP:OpenMP for Snow Leopard的链接库?

#include <omp.h> 
#include <iostream> 
#include <stdio.h> 

int main (int argc, char * const argv[]) { 

    #pragma omp parallel 
    printf("Hello from thread %d, nthreads %d\n", omp_get_thread_num(), omp_get_num_threads()); 
    return 0; 
} 

我并没有包括任何链接库呢,所以链接器抱怨:

“_omp_get_thread_num”从引用:_main在main.o中
“_omp_get_num_threads”,从引用:在main.o中_main

OK,好,没问题,我拿在现有FR一起来看看amework,寻找关键字,如openmp或omp ...这里出现问题,链接库在哪里?或者我应该说,openMP的链接库的名称是什么?是dylib,框架还是什么?或者我需要先从某处获得它?

回答

12

如果你想知道如何在XCode中4编译此,我不得不启用OpenMP支持。

我通过单击Project启用了OpenMP支持,然后在Build Options下,我将Enable OpenMP Support从No更改为Yes。

此外,我不得不将编译器版本从“LLVM 2.0”更改为“GCC 4.2”或“LLVM GCC 4.2”。否则,编译器找不到“omp.h”。

+2

+1我也需要更改编译器版本。 – 2011-12-24 00:34:02

+0

我在Xcode 6.3上找不到这个选项 – Marin 2015-05-10 09:55:29

2

没有必要。我们只需要在项目设置下启用OpenMP支持。

1

的gcc -o -fopenmp mycode的mycode.c中