我在centOS 6.2上設置cuda 5.0,我已經設置了成功,因爲我命令queryDevice,我通過了。當我進入/root/NVIDIA_CUDA-5.0_Samples,和我做這個項目,我得到了以下錯誤:/usr/local/cuda-5.0/lib64/libcusparse.so:未定義引用std :: bad_alloc :: what()[email protected]_3.4.9
make[1]: Entering directory `/root/NVIDIA_CUDA-5.0_Samples/7_CUDALibraries/conjugateGradientPrecond'
g++ -m64 -I/usr/local/cuda-5.0/include -I. -I.. -I../../common/inc -o main.o -c main.cpp
g++ -m64 -o conjugateGradientPrecond main.o -L/usr/local/cuda-5.0/lib64 -lcudart -lcublas -lcusparse
/usr/local/cuda-5.0/lib64/libcusparse.so: undefined reference to `std::bad_alloc::what() [email protected]_3.4.9'
collect2: ld returned 1 exit status
make[1]: *** [conjugateGradientPrecond] Error 1
我的編譯器是gcc44,這是從下面的步驟有:前
1.sudo rm gcc
2.sudo ln -s /usr/bin/gcc-4.4 gcc
我做了1和2的高級操作,我的編譯器是gcc 4.1.7,我得到了像標題一樣的錯誤,所以我做了1和2的操作,但是有錯誤要麼
我以「strings /usr/lib/libstdc++.so.6 | grep GLIBC」的形式執行命令,然後OS返回「GLIBCXX_3.4,GLIBCXX_3.4.1,GLIBCXX_3.4.2,GLIBCXX_3.4.3,GLIBCXX_3.4.4, GLIBCXX_3.4.5,GLIBCXX_3.4.6,GLIBCXX_3.4.7,GLIBCXX_3.4.8,GLIBC_2.3,GLIBC_2.0,GLIBC_2.3.2,GLIBC_2.4,GLIBC_2.1,GLIBC_2.1.3,GLIBC_2.2,GLIBCXX_FORCE_NEW」。有沒有名爲GLIBCXX_3.4.9的軟件包? – taoyuanjl
你是對的,我進一步檢查操作系統,我的操作系統是5.8分。所以在我使用cuda 5.0安裝RHEL5.0之後,錯誤消失了。很感謝! – taoyuanjl