Cuda 6.0/PyCuda. 'ImportError'

У меня был Cuda 5.5 с работающим отлично pycuda, но затем я должен был обновить до CUDA 6.0.

Теперь, когда я пытаюсь запустить демонстрационную программу PyCuda, я получаю это:

ImportError: libcurand.so.6.0: cannot open shared object file: No such file or directory

Я нашел путь к тому файлу, я, как предполагается, связываю эту библиотеку так или иначе? и если так, Как? и где к?

4
задан 19 September 2014 в 22:11

2 ответа

Это происходит, потому что путь lib не присутствует в переменной LD_LIBRARY_PATH.

Для добавления этого пути к переменной LD_LIBRARY_PATH откройте Ваш ~/.bashrc файл с помощью

gedit ~/.bashrc

и добавьте следующую строку. Повторно набросьтесь <path_to_your_lib> с путем к файлу.

export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:<path_to_your_lib>
3
ответ дан 17 November 2019 в 14:15

Решение: необходимо добавить путь к библиотекам CUDA к Вашему $LD_LIBRARY_PATH переменная среды.

Объяснение:

, Когда программа CUDA выполнена, она должна динамично связаться с библиотеками времени выполнения CUDA. По умолчанию эти библиотеки расположены в /usr/local/cuda/lib каталог. При поиске этих библиотек операционная система смотрит в каталогах, определенных в $LD_LIBRARY_PATH переменная среды. Если каталог библиотеки CUDA не будет определен здесь, программа перестанет работать с ошибкой, показанной выше.

существует два решения (они предполагают использование оболочки удара которая является оболочкой Отдела CS по умолчанию):

  1. Выполнение следующая команда:

    export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/cuda/lib
    

    Это изменение не является персистентным и должно будет быть повторно выполнено каждый раз, когда Вы входите в систему.

  2. Редактирование Ваш .profile файл (расположенный в ~/.profile). Найдите строку, которая устанавливает $LD_LIBRARY_PATH переменная, которая должна выглядеть подобной следующему:

    LD_LIBRARY_PATH="/usr/lib:/usr/openwin/lib:/usr/dt/lib:/X11.6/lib:/X11.5/lib:/uva/lib:/gnu/lib"
    

    Изменяют ту строку для добавления пути к библиотекам CUDA:

    LD_LIBRARY_PATH="/usr/lib:/usr/openwin/lib:/usr/dt/lib:/X11.6/lib:/X11.5/lib:/uva/lib:/gnu/lib:/usr/local/cuda/lib"
    

    После редактирования файла, или необходимо выйти из системы и войти в или выполнить следующую команду:

    source ~/.profile
    

Это решение является персистентным и только должно быть выполнено однажды.

источник

3
ответ дан 17 November 2019 в 14:15

Другие вопросы по тегам:

Похожие вопросы: