2011-02-02 6 views
5

में लिंक कैसे करें मेरे पास एक प्रोजेक्ट है जिसके लिए ओपनक्ल की आवश्यकता है। मैं अपने मशीन पर CUDA और OpenCL स्थापित किया है, लेकिन जब मैं बनाने के 'अपने प्रोजेक्ट निम्न त्रुटि होती है:cl.h नहीं मिला - मेकफ़ाइल

CL/cl.h: No such file or directory 

मुझे पता है कि मैं (मेरे यूनिक्स (ubuntu) प्रणाली में) एक कठिन लिंक बना सकते हैं ठीक करने के लिए समस्या:

ln -s /usr/include/nvidia-current/CL 

लेकिन मैं इसे एक त्वरित समाधान मानता हूं और सही समाधान नहीं। मैं इसे अपने मेकफ़ाइल (मुझे लगता है) में इसे संभालना चाहता हूं ताकि एक साधारण "मेक" कमांड संकलित हो। मैं ये कैसे करूं?

उत्तर

5

आपको कंपाइलर के लिए एक उपयुक्त-आई विकल्प (उदाहरण के लिए सीपीपीएफएलजीएस या सीएफएलजीएस सेट करके) पास करने की आवश्यकता है। -I/usr/include/nvidia-current लगता है जैसे यह काम करेगा।

+0

मैंने इसे उस विशिष्ट मॉड्यूल के लिए एक अलग फ़ाइल हैंडलिंग INCLUDEPATHS में जोड़ने के लिए समाप्त कर दिया। लेकिन सत्यापित किया कि आपका विकल्प भी काम करता है और वास्तव में वह चीज़ है जिसे मैंने मूल रूप से पूछा था। अंतिम रूप में आपका उत्तर स्वीकार करने के लिए। धन्यवाद। – bastijn

+0

धन्यवाद, इसने मुझे एनवीडिया ड्राइवरों की नई 200 श्रृंखला के साथ अंधेरे को संकलित करने में मदद की। (अभी तक कोई डेबियन पैकेज नहीं है जो सीएल/cl.h हेडर फ़ाइल प्रदान करता है।) –

+0

@ सिमन ए यूस्टर: http://packages.debian.org/experimental/opencl-headers – derobert

1

मैं मैं 7.5 स्थापित से compile opencl program using CL/cl.h file

इस सूत्र को देखा और लिंक नीचे जोड़ा/usr/शामिल में, यह मेरी OpenCL कार्यक्रम के लिए काम करता है। ऐसा लगता है कि स्थापना के बाद इस लिंक को लागू करने के लिए CUDA भूल गए हैं।

ln -s /usr/local/cuda-7.5/include/CL /usr/include 
0

आप Ubuntu या Debian distro का उपयोग कर रहे हैं? तो अब आप इस पैकेज का उपयोग कर सकते हैं:

sudo apt-get install opencl-headers