방금 AMD CUDA 4.0 Toolkit과 Eclipse Helios 용 CUDA plugin을 AMD64 Ubuntu 10.10 시스템에 설치했습니다. 모든 NVIDIA GPU Computing SDK 예제를 성공적으로 컴파일 할 수 있었기 때문에 빌드 시스템이 정상적으로 보입니다. 아래 그림과 같이 그러나 나는 런타임 라이브러리를 찾을하지 않는 것, 이클립스에서 컴파일 플러그인의 안녕하세요 CUDA 템플릿을 만들 수 없습니다 : YDL.net의 Eclipse CUDA 플러그인이 CUDA 4.0을위한 준비가 되었습니까?
이미 버전 4.0 플러그인을 사용하려고 누구했습니다
**** Build of configuration Release for project holamundo ****
make all
cc holamundo.o -o holamundo
holamundo.o: In function `__sti____cudaRegisterAll_44_tmpxft_000022c4_00000000_4_holamundo_cpp1_ii_main()':
tmpxft_000022c4_00000000-1_holamundo.cudafe1.cpp:(.text+0xa): undefined reference to `__cudaRegisterFatBinary'
holamundo.o: In function `main':
tmpxft_000022c4_00000000-1_holamundo.cudafe1.cpp:(.text+0x7d): undefined reference to `cudaMalloc'
tmpxft_000022c4_00000000-1_holamundo.cudafe1.cpp:(.text+0xca): undefined reference to `cudaConfigureCall'
tmpxft_000022c4_00000000-1_holamundo.cudafe1.cpp:(.text+0xe9): undefined reference to `cudaMemcpy'
tmpxft_000022c4_00000000-1_holamundo.cudafe1.cpp:(.text+0x256): undefined reference to `cudaFree'
tmpxft_000022c4_00000000-1_holamundo.cudafe1.cpp:(.text+0x273): undefined reference to `HelloWorld_kernel(int, char*)'
holamundo.o: In function `__cudaUnregisterBinaryUtil()':
tmpxft_000022c4_00000000-1_holamundo.cudafe1.cpp:(.text+0x38): undefined reference to `__cudaUnregisterFatBinary'
holamundo.o:(.eh_frame+0x12): undefined reference to `__gxx_personality_v0'
collect2: ld returned 1 exit status
make: *** [holamundo] Error 1
CUDA 툴킷? 필자는 이것을 테스트하지는 않았지만 버전 3.x와의 호환성만을 위해 디자인 된 것처럼 보입니다.
귀하의 프로젝트가 CUDA 런타임 라이브러리를 연결하지 않은 것으로 보입니다. 이것은 CUDA 4.0에만 국한된 것이 아닙니다. – talonmies
하지만 ldconfig를 통해 corectly LD_LIBRARY_PATH를 설정했습니다. 나도 모르겠다. Eclipse가이 환경 변수에 대해 알고 있는가? –
LD_LIBRARY_PATH는 컴파일에 영향을 미치지 않으며, 런타임에 공유 라이브러리를 찾는 방법을 제어합니다. – talonmies