Linking problem (maybe...) libcudart.so: undefined reference to `std::_List_node_base::_M_unhook(
Hi everybody,
i've just installed the latest cuda toolkit, update the LD_LIBRARY_PATH and PATH with the cuda's directories and i've tried to compile a simple test code resulting in 2 linking errors:

nvcc square.cu
/usr/local/cuda/lib64/libcudart.so: undefined reference to `std::_List_node_base::_M_unhook()@GLIBCXX_3.4.14'
/usr/local/cuda/lib64/libcudart.so: undefined reference to `std::_List_node_base::_M_hook(std::_List_node_base*)@GLIBCXX_3.4.14'
collect2: ld returned 1 exit status

I've googled for couple of hours but i can't solve the problem. Does anybody know how to successfully link the code and the libraries?
Thank u!!!
Hi everybody,

i've just installed the latest cuda toolkit, update the LD_LIBRARY_PATH and PATH with the cuda's directories and i've tried to compile a simple test code resulting in 2 linking errors:



nvcc square.cu

/usr/local/cuda/lib64/libcudart.so: undefined reference to `std::_List_node_base::_M_unhook()@GLIBCXX_3.4.14'

/usr/local/cuda/lib64/libcudart.so: undefined reference to `std::_List_node_base::_M_hook(std::_List_node_base*)@GLIBCXX_3.4.14'

collect2: ld returned 1 exit status



I've googled for couple of hours but i can't solve the problem. Does anybody know how to successfully link the code and the libraries?

Thank u!!!

#1
Posted 12/11/2011 09:37 PM   
I add some more info on my system:

Debian 6.0.3
gcc-4.4.5
g++-4.4.5
cuda toolkit 4.1 installed by means of cudatoolkit_4.1.21_linux_64_ubuntu11.04.run found on nvidia website

I have these libraries:
/usr/local/cuda/lib64/libcudart.so.4.1.21
/usr/lib64/libcuda.so.260.19.44
/usr/lib64/libstdc++.so.6.0.13

I appreciate any suggestion on the installation of a stable cuda version on Debian 6.0.3

Thanks
I add some more info on my system:



Debian 6.0.3

gcc-4.4.5

g++-4.4.5

cuda toolkit 4.1 installed by means of cudatoolkit_4.1.21_linux_64_ubuntu11.04.run found on nvidia website



I have these libraries:

/usr/local/cuda/lib64/libcudart.so.4.1.21

/usr/lib64/libcuda.so.260.19.44

/usr/lib64/libstdc++.so.6.0.13



I appreciate any suggestion on the installation of a stable cuda version on Debian 6.0.3



Thanks

#2
Posted 12/13/2011 10:09 AM   
PROBLEM SOLVED

I've re-installed the cuda toolkit with the run-file cudatoolkit_4.1.21_linux_64_ubuntu10.04.run (instead of the previous ubuntu11.04 version)

Hope to be usefull for next Debian users.
PROBLEM SOLVED



I've re-installed the cuda toolkit with the run-file cudatoolkit_4.1.21_linux_64_ubuntu10.04.run (instead of the previous ubuntu11.04 version)



Hope to be usefull for next Debian users.

#3
Posted 12/13/2011 11:29 AM   
I have the same problem on Fedora 13.

When I compile SDK, it failed.
[code]
make[2]: Entering directory `/root/NVIDIA_GPU_Computing_SDK/C/src/histogram'
/usr/local/cuda/lib64/libcudart.so: undefined reference to `std::_List_node_base::_M_unhook()@GLIBCXX_3.4.14'
/usr/local/cuda/lib64/libcudart.so: undefined reference to `std::_List_node_base::_M_hook(std::_List_node_base*)@GLIBCXX_3.4.14'
[/code]

OS: fedora 13
driver: devdriver_4.1_linux_64_285.05.32.run
toolkit: cudatoolkit_4.1.28_linux_64_fedora14.run

EDIT: find the root cause, Fedora 13 does not support GLIBCXX_3.4.14
[code]
strings /usr/lib64/libstdc++.so.6 | grep GLIBC
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
GLIBCXX_3.4.9
GLIBCXX_3.4.10
GLIBCXX_3.4.11
GLIBCXX_3.4.12
GLIBCXX_3.4.13
GLIBC_2.2.5
GLIBC_2.3
GLIBC_2.4
GLIBC_2.3.2
GLIBCXX_FORCE_NEW
GLIBCXX_DEBUG_MESSAGE_LENGTH
[/code]

I will go back to cuda 4.0
I have the same problem on Fedora 13.



When I compile SDK, it failed.



make[2]: Entering directory `/root/NVIDIA_GPU_Computing_SDK/C/src/histogram'

/usr/local/cuda/lib64/libcudart.so: undefined reference to `std::_List_node_base::_M_unhook()@GLIBCXX_3.4.14'

/usr/local/cuda/lib64/libcudart.so: undefined reference to `std::_List_node_base::_M_hook(std::_List_node_base*)@GLIBCXX_3.4.14'




OS: fedora 13

driver: devdriver_4.1_linux_64_285.05.32.run

toolkit: cudatoolkit_4.1.28_linux_64_fedora14.run



EDIT: find the root cause, Fedora 13 does not support GLIBCXX_3.4.14



strings /usr/lib64/libstdc++.so.6 | grep GLIBC

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

GLIBCXX_3.4.9

GLIBCXX_3.4.10

GLIBCXX_3.4.11

GLIBCXX_3.4.12

GLIBCXX_3.4.13

GLIBC_2.2.5

GLIBC_2.3

GLIBC_2.4

GLIBC_2.3.2

GLIBCXX_FORCE_NEW

GLIBCXX_DEBUG_MESSAGE_LENGTH




I will go back to cuda 4.0

Department of Mathematics, Tsing Hua university, R.O.C.
Lung Sheng Chien

#4
Posted 01/30/2012 12:44 AM   
Scroll To Top