2012-05-11 4 views
1

초보자이며 우분투 11.10에 pycuda2011.2.2를 설치했지만 완료 할 수 없습니다. Cuda는 4.0입니다.우분투에서 pycuda 설치 오류 :/usr/bin/ld : -lcuda를 찾을 수 없습니다.

내가 설치 한 라이브러리 : 내가 할 때,

$ ./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

을 :하지만

$ sudo apt-get install build-essential python-dev python-setuptools libboost-python-dev libboost-thread-dev -y

는 다음과 같이 configure.py 호출

[email protected]:~/pycuda-2011.2.2$ make -j 4 

내가이 오류 :

/usr/bin/ld: cannot find -lcuda

/usr/bin/ld: skipping incompatible /usr/local/cuda/lib/libcurand.so when searching for -lcurand

왜이 오류가 발생 했습니까?

감사합니다.

답변

1

당신은 pycuda 설치가 아닌 표준 위치 (/usr/lib/nvidia-current)에 우분투 시스템에있는 libcuda.so을 찾을 수 있도록 LDFLAGS 환경 변수를 설정해야합니다.

pycuda의 설치가 2012.1이 완전히 기반의 distutils, 아니 Makefile는 포함되지 않습니다. pycuda을 설치하려면 ./configure.py과 적절한 옵션을 사용하고 LDFLAGS=/usr/lib/nvidia-current python setup.py install을 실행하십시오.

0

는 엔비디아 (313)과 같은 엔비디아 카드에 대한 몇 가지 새로운 드라이버를 (즉, 내가 무엇을 사용)를 사용하는 경우, 다음 파일 libcuda.so에하지 않을 수 있습니다 (lcuda 별명, 나는 이유를 알고하지 않습니다) cuda 설치 디렉토리 (기본적으로/usr/lib/cuda)입니다. 대신 직접 찾아야 할 수도 있습니다. 해야 할 것 : 나를 위해 /usr/lib/*/libcuda.so

을 찾을

$

이 결과는

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

입니다 pycuda를 설치할 때

그래서, 내가 할 :

$ 파이썬 configure.py의 --cuda 루트 =는/usr/lib 디렉토리/NVIDIA-313-업데이트

은 $가

$ sudo를 다음

$ optirun 파이썬 테스트/test_driver.py

또는

$ optirun 파이썬 some_program_which_imports_pycuda.py

잘 작동합니다 설치합니다.