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

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

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

$ sudo apt-get install build-essential 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

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

Спасибо.


person user1388297    schedule 11.05.2012    source источник


Ответы (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.

person kynan    schedule 09.08.2012

Если вы используете более новые драйверы для карты 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-обновления

$ make

$ sudo make install

тогда,

$ optirun тест python / test_driver.py

or

$ optirun python some_program_which_imports_pycuda.py

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

person François Landes    schedule 21.02.2014