के साथ ओपनएमपी मैंने अभी ओएस एक्स 10.8 "माउंटेन शेर" में अपग्रेड किया है और मुझे ऐसा करने पर खेद करना शुरू हो गया है।ओएस एक्स 10.8, llvm, सीएमके
अब मैं अपना (सरल) समांतर कोड बनाने में सक्षम नहीं हूं जो OpenMP का उपयोग करता है।
यहां देखकर मुझे पता चला कि ऐप्पल अब 'जीसीसी' लेकिन 'llvm' का उपयोग नहीं कर रहा है - लाइसेंस-संबंधी मुद्दों के कारण काफी संभावना है। दुर्भाग्यवश 'llvm' (ओपनएमपी) का समर्थन नहीं करता है।
मुझे विश्वास नहीं है कि ओपनएमपी के आधार पर कई कार्यक्रम ओएस एक्स पर नहीं चलेंगे, इसलिए मेरा सवाल है: मैं माउंटेन शेर में ओपनएमपी कैसे सक्षम कर सकता हूं?
हिस्टो इलिव के उत्कृष्ट उत्तर पढ़ने के बाद, मुझे लगता है कि मैंने शुरू में सोचा था उससे ज्यादा मुझे याद आ रही है।
मैं एक्सकोड का उपयोग नहीं कर रहा हूं। इमारत सीएमके पर आधारित है और/gcc बनाओ। कल मैंने मैकपोर्ट्स के माध्यम से जीसीसी 4.2 स्थापित किया, लेकिन - आज के रूप में - मेरा कोड अभी भी स्रोत रूप में है क्योंकि - कुछ अजीब कारणों से - मैं संकलन को जीसीसी (ओपनएमपी से संबंधित त्रुटियों) में स्विच करने में सक्षम नहीं हूं।
समस्या अब यह है कि सीएमके llvm कंपाइलर का उपयोग करता रहता है।
set(CMAKE_C_COMPILER "/opt/local/bin/gcc-apple-4.2")
set(CMAKE_CXX_COMPILER "/opt/local/bin/gcc-apple-4.2")
और मैं भी दो वातावरण चर कहा:: जड़ CMakeLists.txt में मैं निम्नांकित दो पंक्तियों को जोड़ा
export CXX=/opt/local/bin/gcc-apple-4.2
export CC=/opt/local/bin/gcc-apple-4.2
CMake OpenMP (FIND_PACKAGE (OpenMP)) मैं खोजने के लिए प्रयास करता है निम्नलिखित उत्पादन:
-- The compiler is /opt/local/bin/gcc-apple-4.2
-- Try OpenMP C flag = [-fopenmp]
-- Performing Test OpenMP_FLAG_DETECTED
-- Performing Test OpenMP_FLAG_DETECTED - Failed
[...]
CMake Error at /opt/local/share/cmake-2.8/Modules/FindPackageHandleStandardArgs.cmake:97 (message):
Could NOT find OpenMP (missing: OpenMP_C_FLAGS OpenMP_CXX_FLAGS)
Call Stack (most recent call first):
/opt/local/share/cmake-2.8/Modules/FindPackageHandleStandardArgs.cmake:291 (_FPHSA_FAILURE_MESSAGE)
/opt/local/share/cmake-2.8/Modules/FindOpenMP.cmake:159 (find_package_handle_standard_args)
demo/CMakeLists.txt:8 (FIND_PACKAGE)
मैं /opt/local/bin/gcc-apple-4.2
मैन्युअल भागने की कोशिश की है और यह एक लापता libgomp के कारण विफल रहता है।
सादर
आप बस 10.8 पर जीसीसी स्थापित कर सकते हैं: http://stackoverflow.com/questions/9353444/how-to-use-install-gcc-on-mac-os-x-10-8-xcode-4-4 –
मुझे वह प्रश्न मिला, लेकिन यह कमांड लाइन टूल्स की स्थापना से संबंधित था। अब मैंने असली जीसीसी स्थापित करने से संबंधित जवाब देखा है। धन्यवाद। –
आपको मैकपोर्ट से जीसीसी 4.2 जोड़ना नहीं था क्योंकि यह एक्सकोड कमांड लाइन टूल्स के साथ आता है। आपको केवल [उन्हें जीयूआई से अतिरिक्त स्थापित करना होगा] (http://developer.apple.com/library/ios/#documentation/DeveloperTools/Conceptual/WhatsNewXcode/Articles/xcode_4_3.html)। फिर भी, जैसा कि आप एक्सकोड का उपयोग नहीं करते हैं, मैं अत्यधिक अनुशंसा करता हूं कि आप अपना स्वयं का जीसीसी 4.7.2 बनाएं - ओपनएमपी 3.1 फीचर्स के लिए नवीनतम और सबसे बड़ा समर्थन :) –