2010-05-24 15 views
6

वर्तमान में, मैं बाहर OpenMP XCode 3.2.2 पर हिमपात तेंदुए पर कोशिश कर रहा हूँ:हिम तेंदुए के लिए ओपनएमपी के लिए लिंकर लाइब्रेरी?

#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

ठीक है, ठीक है, कोई समस्या नहीं है, मैं मौजूदा fr में एक बार देख ले amework, openmp या omp जैसे कीवर्ड की तलाश में ... यहां समस्या आती है, लिंकिंग लाइब्रेरी कहां है? या मुझे कहना चाहिए, ओपनएमपी के लिए लिंकिंग लाइब्रेरी का नाम क्या है? क्या यह dylib, ढांचे या क्या है? या मुझे इसे पहले कहीं से प्राप्त करने की ज़रूरत है?

उत्तर

12

मामले में किसी को भी सोच रहा है कैसे XCode 4 में इस संकलित करने के लिए, मैं भी OpenMP समर्थन सक्षम करने के लिए किया था।

मैंने प्रोजेक्ट पर क्लिक करके ओपनएमपी समर्थन सक्षम किया, फिर बिल्ड विकल्प के तहत, मैंने ओपनएमपी समर्थन को नो से हां में सक्षम किया।

इसके अलावा, मुझे "एलएलवीएम 2.0" से "जीसीसी 4.2" या "एलएलवीएम जीसीसी 4.2" में कंपाइलर संस्करण बदलना पड़ा। अन्यथा, कंपाइलर "omp.h" नहीं मिला।

+2

+1 मेरे लिए कंपाइलर संस्करण बदलना भी आवश्यक था। –

+0

मुझे यह विकल्प Xcode 6.3 पर नहीं मिला है – Marin

2

कोई आवश्यकता नहीं है। हमें केवल परियोजना सेटिंग के तहत ओपनएमपी समर्थन को सक्षम करने की आवश्यकता है।

1

जीसीसी -fopenmp -ओ mycode mycode.c

संबंधित मुद्दे