CUDA için LD_LIBRARY_PATH ayarı


12

CUDA araç setini kurmak, konsola aşağıdaki talimatların basılmasına neden olur.

Lütfen 64 bit Linux dağıtımları için LD_LIBRARY_PATH değerinin /usr/local/cuda-5.0/lib64:/usr/local/cuda-5.0/lib içerdiğinden emin olun

VEYA

64 bit Linux dağıtımları için /usr/local/cuda-5.0/lib64 ve /usr/local/cuda-5.0/lib dizinini /etc/ld.so.conf dosyasına ekleyin ve ldconfig dosyasını root olarak çalıştırın

Aşağıdaki kodun /etc/profilehiçbir etkisi yoktu.

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

Yani, yeniden başlatma ve verme echo $LD_LIBRARY_PATHdeğişkenin tanımlanmadığını gösterdi.

Alternatif öneriyi denemek için, dosyaya /etc/ld.so.confşu şekilde görünmesi için iki satırı dosyaya ekledim

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

Sonra yayınladım:

sudo ldconfig

sonra

echo $LD_LIBRARY_PATH

Yine de ortam değişkeni ayarlanmadı. Yukarıda gösterilen CUDA kurulum talimatlarına nasıl uyurum?


1
ldconfig LD_LIBRARY_PATH ayarlamıyor, farklı bir şekilde kütüphaneler içeriyor.
w4etwetewtwet

Yanıtlar:


17

.confUzantısı /etc/ld.so.conf.d/ olan ve kitaplıklara giden yolları içeren bir dosya ekleyin ve ldconfig dosyasını çalıştırın. Dosyanın izinlerini ve sahipliğini dizindeki diğer dosyalarla eşleşecek şekilde ayarladığınızdan emin olun.

Bu, .bashrc'yi değiştirmek için kullanıcıya özel çözümün aksine sistem çapında bir çözümdür.

Benim sistemde yaptığım nvidia.confiçinde /etc/ld.so.conf.d/. Dosya şu satırları içerir:

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

Dosyayı bu şekilde oluşturursanız, sudoizinleriniz iyi olmalıdır, ancak benim nvidia.confsahipim / grup kökü ve rw-r - r-- (veya 644).


1
Bu işe yaramıyor gibi görünüyor. ldconfig $ LD_LIBRARY_PATH ayarlamıyor.
Nick

1
Anladığım kadarıyla, sorunu yol değişkenini ayarlamanıza gerek kalmayacak şekilde giderir. Dolayısıyla, "çalışmazsa" değişkenin ayarlanmadığı anlamına gelirse, emin olun. "Çalışmıyor", CUDA'nın çalışmadığı anlamına gelirse, kurulumumda CUDA geliştirmeyi etkinleştirdiği (ve etkinleştirmeye devam ettiği) için sorununuz hakkında daha fazla bilgi gerekir.
Logan Mayfield

Eminim bazı şeyler için çalışır, derlemeye çalıştığım program $ LD_LIBRARY_PATH kullanmak istiyor, ki bu muhtemelen en iyi uygulama değil, onu ayarlamam gerekiyor!
Nick

10

Aşağıdakileri koyun .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

Bence tercih edilen yöntem bir .conf dosyası oluşturmaktır. Bunu aşağıdaki cevabımda anlattım.
Logan Mayfield
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.