Cuda-5.0 SDK(Ubuntu 64)制作过程中出错,未定义对';dlsym';

Cuda-5.0 SDK(Ubuntu 64)制作过程中出错,未定义对';dlsym';,ubuntu,cuda,nvidia,Ubuntu,Cuda,Nvidia,我对Ubuntu和CUDA都是新手,但在尝试之前尝试添加LDHFLAGIS-LDL,这对英伟达的建议没有帮助,并设置路径和LDLBracyLyPixPATH。此外,我还更新了所有驱动程序,并能够从SDK deviceQuery程序中获得有效的结果 如果有任何帮助,我将不胜感激,因为我尝试过的其他方法都不起作用。添加-ldl就足够了。进入示例目录(cd 6_Advanced/cdpLUDecomposition),并使用make检查build命令。在我的机器上 /usr/local/cuda-5.

我对Ubuntu和CUDA都是新手,但在尝试之前尝试添加LDHFLAGIS-LDL,这对英伟达的建议没有帮助,并设置路径和LDLBracyLyPixPATH。此外,我还更新了所有驱动程序,并能够从SDK deviceQuery程序中获得有效的结果


如果有任何帮助,我将不胜感激,因为我尝试过的其他方法都不起作用。

添加
-ldl
就足够了。进入示例目录(
cd 6_Advanced/cdpLUDecomposition
),并使用
make
检查build命令。在我的机器上

/usr/local/cuda-5.0/bin/nvcc-m64-Xcompiler-fopenmp-gencode arch=compute_35,code=sm_35-o cdplus分解dlaswp.o dgetf2.o dgetrf.o cdp_lu.o cdp_lu_main.o-L/usr/local/cuda-5.0/lib64-lcublas-lcublas-lcublas设备-lcudadevrt-lgomp

你也可以

  • 手动运行build命令附加
    -ldl
    ,或
  • 通过将
    -ldl
    附加到适当的LDFLAGS(第89行)来修复目录中的Makefile,这对于下一次重建来说更干净、更安全

ldd-cdpLUDecomposition
然后显示它链接到/lib/x86\u 64-linux-gnu/libdl.so.2。

您使用的是哪个版本的Ubuntu?它不是受支持的操作系统。您可以在安装程序中查看支持的操作系统。如果您不关心cdpLUDecomposition示例,那么您可以使用
make-k
而不是常规make,它将构建所有可以构建的目标。这是一个库命名或安装位置的问题,其他人在ubuntu 12.xx上也遇到了类似的问题。谢谢Robert。我确实看到12.04不在支持列表中,但没有与该问题建立连接。使用make-k确实可以像您所说的那样工作,我认为这是唯一一个产生错误的示例。希望12.04的全面支持很快就会到来。@user582184:我在一个新的Ubuntu上遇到了类似的问题,但与CUDA无关。您可以尝试将'-ldl'链接器标志放在链接器命令的最末端。希望这有帮助
The toolkit and items 1-6 of the NVIDIA_CUDA SDK have been installed and compiled , but when it gets to '6_Advanced/cdpLUDecomposition' the following error message appears.
  /usr/local/cuda-5.0/bin/nvcc -m64 -Xcompiler -fopenmp -gencode arch=compute_35,code=sm_35  -o cdpLUDecomposition dlaswp.o dgetf2.o dgetrf.o cdp_lu.o cdp_lu_main.o -L/usr/local/cuda-5.0/lib64 -lcublas -lcublas_device -lcudadevrt -lgomp 
/usr/local/cuda-5.0/lib64/libcublas.so: error: undefined reference to 'dlsym'
/usr/local/cuda-5.0/lib64/libcublas.so: error: undefined reference to 'dlopen'
/usr/local/cuda-5.0/lib64/libcublas.so: error: undefined reference to 'dlclose'
collect2: ld returned 1 exit status
make[1]: *** [cdpLUDecomposition] Error 1