Я устанавливаю pycuda2011.2.2 в Ubuntu 11.10, но не могу его завершить. Cuda 4.0. Когда я делаю:
$ make -j 4
я получаю эту ошибку:
/usr/bin/ld: cannot find -lcuda
/usr/bin/ld: skipping incompatible /usr/local/cuda/lib/libcurand.so when searching for -lcurand
Почему эта ошибка? Я думаю, что Cuda является 32-битной на 64-битной машине. Но я не вижу, 32-битная или 64-битная.
Кроме того, кто-нибудь может поделиться кодом, чтобы сделать «gcc 4.4» в качестве приоритета, только для моей учетной записи, а не для всей учетной записи?
Я не понимаю, почему Вы хотели бы работать make
вообще при создании pycuda - это даже не имеет Makefile
(кроме документации).
Вы устанавливаете pycuda путем выполнения ./configure.py
с подходящими вариантами, сопровождаемыми LDFLAGS=-L/usr/lib/nvidia-current python setup.py install
.
необходимо установить LDFLAGS
переменная среды так, чтобы установка pycuda могла найти libcuda.so
, который в системах человечности находится в нестандартном месте (/usr/lib/nvidia-current
).
, Если Вы действительно спрашиваете о компиляции SDK CUDA (в этом случае необходимо определенно отредактировать вопрос!), посмотрите мой ответ на форумах NVIDIA .
Что относительно того, чтобы удалить -lcuda
из Makefile
? В прошлый раз, когда я проверил инструментарий и sdk, я не мог найти libcuda.so
файл.
также были изменения в строгости компилятора, таким образом -lcuda
должен прибыть после объектных файлов и других библиотек, которые зависят от него. Вероятно, необходимо переместиться -lcuda
в конец $(CC)
строка (или независимо от того, что команда компилятора используется).