Obtendo um erro ao executar o exemplo CUDA após instalar o CUDA 8.0 no Ubuntu 16.04

0

Acabei de instalar o CUDA 8.0 no meu Ubuntu 16.04

Após a instalação eu estava tentando executar amostras, mas quando eu criei dir NVIDIA_CUDA-8.0_Samples e executei o comando make , eu recebi este erro

$make

...

nvcc warning : The 'compute_20', 'sm_20', and 'sm_21' architectures are deprecated, and may be removed in a future release (Use -Wno-deprecated-gpu-targets to suppress warning).
/usr/bin/ld: cannot find -lnvcuvid
collect2: error: ld returned 1 exit status
Makefile:381: recipe for target 'cudaDecodeGL' failed
make[1]: *** [cudaDecodeGL] Error 1
make[1]: Leaving directory '/home/mukesh/NVIDIA_DIR/NVIDIA_CUDA-8.0_Samples/3_Imaging/cudaDecodeGL'
Makefile:52: recipe for target '3_Imaging/cudaDecodeGL/Makefile.ph_build' failed
make: *** [3_Imaging/cudaDecodeGL/Makefile.ph_build] Error 2

então procurei o erro e obtive uma solução aqui:

Falha na execução da amostra CUDA após a instalação do cuda 8.0

então eu corri o comando

~/NVIDIA_CUDA-8.0_Samples/$find . -type f -execdir sed -i 's/UBUNTU_PKG_NAME = "nvidia-367"/UBUNTU_PKG_NAME = "nvidia-375"/g' '{}' \;

Depois de executar isso, tentei novamente executar make , mas ainda recebendo o erro

collect2: error: ld returned 1 exit status
Makefile:270: recipe for target 'marchingCubes' failed
make[1]: *** [marchingCubes] Error 1
make[1]: Leaving directory '/home/mukesh/NVIDIA_DIR/NVIDIA_CUDA-8.0_Samples/2_Graphics/marchingCubes'
Makefile:52: recipe for target '2_Graphics/marchingCubes/Makefile.ph_build' failed
make: *** [2_Graphics/marchingCubes/Makefile.ph_build] Error 2

ajude-me a me livrar disso, por favor.

obrigado

    
por Mukesh 02.06.2017 / 14:32

1 resposta

0

Desinstale qualquer driver nvidia que você tenha agora, verifique se todas as linhas "blacklist nouveau" foram removidas de todos os arquivos em /etc/modprobe.d, reinicialize e você deve usar os drivers nouveau. Agora use o Software Updater para selecionar a Nvidia 375.66 e quando terminar, reinicie novamente, e você deve estar executando esse driver Nvidia. Agora, uma instalação CUDA (com os dois modificadores PATH e LD_LIBRARY_PATH recomendados) encontrará as bibliotecas necessárias. Eu iria desinstalar os pacotes CUDA também, então você pode reinstalá-los com a Nvidia no lugar, mas tente uma compilação antes de fazer isso.

Verifique se as bibliotecas "ausentes" estão realmente em / usr / lib / nvidia-375. Verifique se o seu ... / cudaDecodeGL / findgllib.mk tem a linha

 UBUNTU_PKG_NAME = "nvidia-375"

Verifique se sua variável PATH começa com / usr / local / cuda / bin:
e que o seu LS_LIBRARY_PATH começa com / usr / local / cuda / lib64
(ou onde quer que você instale cuda). Isso deve ser tudo o que é necessário para executar o make para cudaDecodeGL. Muitas das outras amostras nem exigem essa correção, como os MarchingCubes. Se o seu link ainda não conseguir pegar a biblioteca, Verifique se /etc/ld.so.conf.d contém um arquivo chamado cuda-8-0.conf com o conteúdo de:

   /usr/local/cuda-8.0/targets/x86_64-linux/lib  

(ou qualquer lugar em vez de / usr / local que você instalou cuda). Essa criação deve ter sido automática, a instalação do arquivo .deb faz isso, não é possível dizer se outros métodos fazem isso.

    
por ubfan1 02.06.2017 / 19:02