Para configurar o CUDA 9.1, eu li que é conveniente adicionar sua pasta de instalação para PATH e LD_LIBRARY_PATH , como:
PATH="/usr/local/cuda-9.1/bin:$PATH"
LD_LIBRARY_PATH="/usr/local/cuda-9.1/lib64:$LD_LIBRARY_PATH"
Seguindo este e this SE answers Eu tentei editar o meu arquivo .profile adicionando as últimas linhas como abaixo. / p>
# ~/.profile: executed by the command interpreter for login shells.
# This file is not read by bash(1), if ~/.bash_profile or ~/.bash_login
# exists.
# see /usr/share/doc/bash/examples/startup-files for examples.
# the files are located in the bash-doc package.
# the default umask is set in /etc/profile; for setting the umask
# for ssh logins, install and configure the libpam-umask package.
#umask 022
# if running bash
if [ -n "$BASH_VERSION" ]; then
# include .bashrc if it exists
if [ -f "$HOME/.bashrc" ]; then
. "$HOME/.bashrc"
fi
fi
# set PATH so it includes user's private bin directories
PATH="$HOME/bin:$HOME/.local/bin:$PATH"
# settings for CUDA
PATH="/usr/local/cuda-9.1/bin:$PATH"
LD_LIBRARY_PATH="/usr/local/cuda-9.1/lib64:$LD_LIBRARY_PATH"
Com .profile como acima, posso abrir um terminal e executar echo $PATH para ver as instruções funcionando, pois PATH agora contém a pasta que indiquei. No entanto, por algum motivo, isso não funciona para LD_LIBRARY_PATH .
Eu adivinhei que o problema poderia ter sido que LD_LIBRARY_PATH não existia antes, então eu tentei modificar .profile com o código ligeiramente diferente abaixo nas últimas 2 linhas.
PATH="/usr/local/cuda-9.1/bin:$PATH"
export LD_LIBRARY_PATH=/usr/local/cuda-9.1/lib64
Mais uma vez, no entanto, sem sucesso.
Ao perceber o primeiro aviso no início de .profile , verifiquei se eu tinha arquivos ~/.bash_profile ou ~/.bash_login . Eles não existem e, de qualquer forma, não explicariam como meu PATH é atualizado com êxito.
Fazendo algumas pesquisas, me deparei com este outro resposta, que explica que .profile não é necessariamente executado quando eu abro um terminal. No entanto, novamente, como posso explicar que PATH está atualizado?
Qual poderia ser o problema? Há algo de errado com a minha sintaxe?
EDITAR:
Eu tentei sair e ligar depois que mudei o .profile para conter
PATH="/usr/local/cuda-9.1/bin:$PATH"
export LD_LIBRARY_PATH=/usr/local/cuda-9.1/lib64
e agora funciona. Se eu entrar em um terminal e digitar echo $LD_LIBRARY_PATH eu finalmente o vejo. Eu ainda não entendi porque a primeira versão da minha lista de instruções não funcionou ...