0

我试图让 CUDA5 在共享集群上工作。

当我调用本地 gcc 来构建大型应用程序时,它工作得很好。当我使用 CUDA 包装器时,我收到一条错误消息,指出它找不到 glib 的某些部分。

/lib64/libc.so.6如果我指定了本地 gcc 库目录,为什么 CUDA 会查看?

[uid002@n001 cuda5test]$ ldd /home/ex/uid002/cuda/lib64/libcudart.so
/home/ex/uid002/cuda/lib64/libcudart.so: /lib64/libc.so.6: version `GLIBC_2.14' not found (required by /home/ex/uid002/cuda/lib64/libcudart.so)
    linux-vdso.so.1 =>  (0x00007fff277ff000)
    libdl.so.2 => /lib64/libdl.so.2 (0x00007f5328da6000)
    libpthread.so.0 => /lib64/libpthread.so.0 (0x00007f5328b89000)
    librt.so.1 => /lib64/librt.so.1 (0x00007f5328981000)
    libstdc++.so.6 => /home/ex/uid002/gcc/lib64/libstdc++.so.6 (0x00007f532867d000)
    libm.so.6 => /lib64/libm.so.6 (0x00007f53283f8000)
    libgcc_s.so.1 => /home/ex/uid002/gcc/lib64/libgcc_s.so.1 (0x00007f53281e3000)
    libc.so.6 => /lib64/libc.so.6 (0x00007f5327e67000)
    /lib64/ld-linux-x86-64.so.2 (0x000000335ae00000)

[uid002@n001 cuda5test]$ echo $LD_LIBRARY_PATH
/home/ex/uid002/cuda/lib64:/home/ex/uid002/gmp/lib:/home/ex/uid002/mpfr/lib:/home/ex/uid002/mpc/lib:/home/ex/uid002/gcc/lib64

我试图重新安装 CUDA 包,这没有帮助。

4

1 回答 1

2

libcudart.so:/lib64/libc.so.6:未找到版本“GLIBC_2.14”

此错误意味着该libcudart.so库已链接到具有glibc-2.14或更高版本的系统上。如果您的系统(在链接时和运行时)的版本 >= 2.14 ,则只能使用该库。glibc您的系统不满足libcudart.so. 您必须使用旧版本的libcudart.so,或升级您的系统。

(注意:glibc错误升级是导致系统无法启动的可靠方法。)

如果我指定了本地 gcc 库目录,为什么 CUDA 会查看 /lib64/libc.so.6?

Glibc不是GCC分布的一部分,并且是完全独立的。“本地 gcc 库目录”不太可能libc.so在其中。

于 2012-12-02T03:56:21.550 回答