Ошибка установки Pycuda в Ubuntu: /usr/bin/ld: не удается найти -lcuda

Я новичок и устанавливаю pycuda2011.2.2 на Ubuntu 11.10, но не могу завершить его. Cuda 4.0.

Я установил библиотеки:

$ sudo apt-get install необходимая сборка python-dev python-setuptools libboost-python-dev libboost-thread-dev -y

вызывая configure.py вот так:

$./configure.py --cuda-root = / usr / local / cuda --cudadrv-lib-dir = / usr / lib --boost-inc-dir = / usr / include --boost-lib-dir = / usr / lib --boost-python-libname = boost_python-mt-py27 --boost-thread-libname = boost_thread-mt

Но, когда я делаю:

.....@ubuntu:~/pycuda-2011.2.2$ make -j 4 

Я получаю эту ошибку:

/ usr / bin / ld: не могу найти -lcuda

/ usr / bin / ld: пропуск несовместимого /usr/local/cuda/lib/libcurand.so при поиске -lcurand

почему эта ошибка?

Благодарю.

2 ответа

Вам нужно установить LDFLAGS переменная окружения, так что установка Pycuda может найти libcuda.so, который в нестандартных системах находится в Ubuntu (/usr/lib/nvidia-current).

Установка Pycuda 2012.1 полностью основана на distutils, нет Makefile участвует. Вы устанавливаете Pycuda, запустив ./configure.py с соответствующими параметрами, сопровождаемыми LDFLAGS=/usr/lib/nvidia-current python setup.py install,

Если вы используете более новые драйверы для карты nvidia, такие как nvidia-313 (это то, что я использую), то файл libcuda.so (который называется lcuda, я не знаю почему) может отсутствовать в каталоге установки cuda (по умолчанию это /usr/lib/cuda). Вместо этого вам, возможно, придется найти его самостоятельно. Делать:

$ find /usr/lib/*/libcuda.so

для меня результат

/usr/lib/nvidia-313-updates/libcuda.so

Итак, при установке Pycuda, я делаю:

$ python configure.py --cuda-root = / usr / lib / nvidia-313-updates

$ make

$ sudo make install

затем,

$ optirun python test / test_driver.py

или же

$ optirun python some_program_which_imports_pycuda.py

должно работать нормально.

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