CUDA के लिए LD_LIBRARY_PATH की स्थापना


12

CUDA टूलकिट को इंस्टाल करने के बाद निम्नलिखित निर्देश कंसोल में प्रिंट हो रहे हैं।

कृपया सुनिश्चित करें कि 64-बिट लिनक्स वितरण के लिए अपने LD_LIBRARY_PATH में /usr/local/cuda-5.0/lib64:/usr/local/cuda-5.0/lib शामिल हैं

या

64-बिट लिनक्स वितरण के लिए /usr/local/cuda-5.0/lib64 और /usr/local/cuda-5.0/lib को /etc/ld.so.conf में जोड़ें और रूट पर ldconfig चलाएं।

निम्नलिखित कोड में /etc/profileकोई प्रभाव नहीं था।

if [ -z "$LD_LIBRARY_PATH" ]; then    
  LD_LIBRARY_PATH=/usr/local/cuda-5.0/lib64:/usr/local/cuda-5.0/lib
else
  LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/cuda-5.0/lib64:/usr/local/cuda-5.0/lib
fi
export LD_LIBRARY_PATH

यही है, रिबूट करना और जारी करना echo $LD_LIBRARY_PATHदिखाया गया है कि चर को परिभाषित नहीं किया गया था।

वैकल्पिक सुझाव का प्रयास करने के लिए, मैंने फ़ाइल में दो लाइनें जोड़ीं /etc/ld.so.confताकि मेरी फ़ाइल इस तरह दिखे

include /etc/ld.so.conf.d/*.conf 
/usr/local/cuda-5.0/lib64
/usr/local/cuda-5.0/lib

फिर मैंने जारी किया:

sudo ldconfig

फिर

echo $LD_LIBRARY_PATH

अभी भी पर्यावरण चर सेट नहीं किया गया था। ऊपर दिखाए गए CUDA इंस्टॉलेशन निर्देशों का मैं कैसे पालन करूं?


1
ldconfig LD_LIBRARY_PATH सेट नहीं करता है, इसमें एक अलग तरीके से लाइब्रेरी शामिल हैं।
w4etwetewtwet

जवाबों:


17

.confएक्सटेंशन के साथ एक फ़ाइल जोड़ें /etc/ld.so.conf.d/ जिसमें पुस्तकालयों के लिए पथ शामिल हैं और फिर ldconfig चलाएं। निर्देशिका में अन्य फ़ाइलों से मेल करने के लिए फ़ाइल की अनुमतियों और स्वामित्व को सेट करना सुनिश्चित करें।

यह एक प्रणाली चौड़ा समाधान है।

अपने सिस्टम पर मैंने बनाया nvidia.confमें /etc/ld.so.conf.d/। फ़ाइल में लाइनें हैं:

/usr/local/cuda-5.0/lib64
/usr/local/cuda-5.0/lib

यदि आप फ़ाइल बनाते हैं, sudoतो आपकी अनुमतियां जाने के लिए अच्छी होनी चाहिए, लेकिन मेरा nvidia.confस्वामी / समूह रूट और rw-r - r-- (या 644) है।


1
यह काम नहीं लगता है। ldconfig $ LD_LIBRARY_PATH सेट नहीं करता है।
Nick

1
मेरी समझ यह है कि यह इस तरह से समस्या को ठीक करता है कि आपको पथ चर सेट करने की आवश्यकता नहीं है। तो अगर "काम नहीं करता है" का अर्थ है कि चर सेट नहीं है, तो सुनिश्चित करें। यदि "काम नहीं करता है" का अर्थ है CUDA काम नहीं कर रहा है, तो आपकी समस्या के बारे में अधिक जानकारी की आवश्यकता है क्योंकि यह सक्षम है (और सक्षम करना जारी रखता है) मेरे सेटअप पर CUDA विकास।
लोगन मेफील्ड

मुझे यकीन है कि यह कुछ चीजों के लिए काम करता है, जिस कार्यक्रम को मैं संकलन करने की कोशिश कर रहा था वह $ LD_LIBRARY_PATH का उपयोग करना चाहता है, जो शायद सबसे अच्छा अभ्यास नहीं है, इसका मतलब है कि मुझे इसे सेट करने की आवश्यकता है!
निक

10

निम्नलिखित में डालें .bashrc

if [ -z $LD_LIBRARY_PATH ]; then
  LD_LIBRARY_PATH=/usr/local/cuda-5.0/lib64:/usr/local/cuda-5.0/lib
else
  LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/cuda-5.0/lib64:/usr/local/cuda-5.0/lib
fi
export LD_LIBRARY_PATH

मुझे लगता है कि पसंदीदा तरीका एक .conf फ़ाइल बनाना है। मैंने नीचे अपने उत्तर में इसका वर्णन किया है।
लोगन मेफ़ील्ड
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.