Não é possível definir LD_LIBRARY_PATH em /etc/profile.d

2

Instalei o nVidia CUDA 7.5 no Ubuntu Mate 16.04. No entanto, estou com problemas para configurar as variáveis de ambiente.

Aqui está o arquivo nvidia-settings.sh que tenho na pasta /etc/profile.d :

export PATH=/usr/local/cuda-7.5/bin:$PATH
export LD_LIBRARY_PATH=/usr/local/cuda-7.5/lib64:/usr/lib/nvidia-361:$LD_LIBRARY_PATH
export LIBRARY_PATH=/usr/lib/nvidia-361:/usr/local/cuda-7.5/lib64:$LIBRARY_PATH

No entanto, após a reinicialização, o ambiente LD_LIBRARY_PATH não estava disponível automaticamente. Aqui está a saída do terminal que mostra o problema:

ponir@mate:~$ echo $LD_LIBRARY_PATH

ponir@mate:~$ echo $LIBRARY_PATH
/usr/lib/nvidia-361:/usr/local/cuda-7.5/lib64:
ponir@mate:~$ export LD_LIBRARY_PATH=/usr/local/cuda-7.5/lib64:/usr/lib/nvidia-361:$LD_LIBRARY_PATH
ponir@mate:~$ echo $LD_LIBRARY_PATH
/usr/local/cuda-7.5/lib64:/usr/lib/nvidia-361:
ponir@mate:~$ 

Mas depois de executar export LD_LIBRARY_PATH=/usr/local/cuda-7.5/lib64:/usr/lib/nvidia-361:$LD_LIBRARY_PATH no Terminal, eu consegui essa variável.

Qual poderia ser o problema? Obrigado.

    
por ponir 04.08.2016 / 06:38

2 respostas

5

Em página de ajuda do wiki do Ubuntu

  

Nota: Você só pode definir essa variável de ambiente dentro de uma   Concha. [ie um terminal] Desde o Ubuntu 9.04 Jaunty Jackalope, o LD_LIBRARY_PATH não pode ser   setado em $ HOME / .profile, / etc / profile, nem em arquivos / etc / environment. Você   deve usar os arquivos de configuração /etc/ld.so.conf.d/*.conf. Veja o Launchpad   bug # 366728 para mais informações.

Como corrigir:

cd /etc/ld.so.conf.d

Crie um arquivo com a extensão .conf aqui

sudo nano cuda.conf

Adicione os caminhos a ele como duas linhas

/usr/local/cuda-7.5/lib64
/usr/lib/nvidia-361

Salve e saia. Verifique com ls -l que o arquivo tem a mesma propriedade e permissões que os outros no diretório, eles devem ser:

-rw-r--r-- 1 root root

Em seguida, execute

ldconfig

Isso não define a variável env, mas inclui as bibliotecas apropriadamente, portanto, o CUDA funciona

    
por Zanna 04.08.2016 / 07:05
0

Primeiro de tudo, você deve ter instalado o cuda através do apt-get.

Com isso dito, quando você compila coisas como essas do código-fonte, geralmente é necessário executar o seguinte comando:

 sudo ldconfig

Se não houver algum motivo para ter uma versão compilada instalada e se a versão disponível do apt-get for suficiente para suas necessidades, sugiro que você desinstale a versão compilada e instale a versão do apt-get.

Execute os seguintes comandos para mais informações:

sudo apt-get update 
apt-cache search cuda | grep -i cuda
    
por J.T. 04.08.2016 / 07:03