2010-05-24 2 views
6

현재, 나는 스노우 레오파드 (Snow Leopard)에 엑스 코드 3.2.2에 OpenMP를을 시도하고있다 :Snow Leopard 용 OpenMP 용 링커 라이브러리는 무엇입니까?

#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.o를에 _main
"_omp_get_num_threads": main.o를에 _main는

는 OK, 잘, 문제는, 나는 기존의 FR에서 살펴 없다 amem, openmp 또는 omp와 같은 키워드를 찾으십시오. 여기에 문제가 생깁니다. 연결 라이브러리는 어디에 있습니까? 또는 openMP에 대한 연결 라이브러리의 이름은 무엇입니까? 그것 dylib, 프레임 워크 또는 무엇입니까? 아니면 내가 먼저 어딘가에서 그것을 얻을 필요가 있습니까?

답변

12

가, 나뿐만 아니라 OpenMP의 지원을 활성화했다.

프로젝트를 클릭하여 OpenMP 지원을 활성화 한 다음 빌드 옵션에서 OpenMP 지원 활성화를 아니요에서 예로 변경했습니다.

또한 "컴파일러 버전을"LLVM 2.0 "에서"GCC 4.2 "또는"LLVM GCC 4.2 "로 변경해야했습니다. 그렇지 않으면 컴파일러에서 "omp.h"를 찾을 수 없습니다.

+2

+1 나를 위해 컴파일러 버전을 변경해야했습니다. –

+0

Xcode 6.3에서이 옵션을 찾을 수 없습니다. – Marin

2

필요 없음. 프로젝트 설정에서 OpenMP 지원 만 활성화하면됩니다.

1

GCC -fopenmp -o mycode mycode.c 경우 사람이 엑스 코드 4이 컴파일하는 방법을 궁금해

관련 문제