1

我使用 NVIDIA CUDA 5 工具包在我的笔记本电脑上编译了一个 cu 程序。一个非常基本的界面,仅使用终端输出。然后我继续测试它如何在我的台式机上运行(两者都安装了 Ubuntu 12.04 LTS)。

在台式电脑上,我收到此错误消息:

加载共享库时出错:libcudart.so.5.0:无法打开共享对象文件:没有这样的文件或目录

好的,我明白了,有些库没有安装。但是我真的需要在每台我希望我的编译代码运行的 PC 上安装 CUDA 工具包吗?

4

1 回答 1

8

要在 Linux 上部署 CUDA 运行时 API 应用程序,您只需要做两件事:

  1. 确保有问题的机器具有与您用于构建应用程序的 CUDA 工具包相匹配的 CUDA 兼容卡和最低驱动程序版本(您可以在工具包的发行说明中找到有关这两者的信息)
  2. 分发您使用可执行文件构建应用程序的运行时库(如 cudart.so)。如果您使用工具包中的任何其他库(如 CUBLAS、CUFFT、CUSPARSE 等),您也需要包含这些库。CUDA 运行时库是版本化的,您必须拥有与您正在构建的工具包匹配的库。您可能需要使用LD_LIBRARY_PATH环境变量来确保链接加载器找到正确版本的库。通常,一个简单的 shell 脚本充当规范应用程序、设置LD_LIBRARY_PATH变量并运行构建的可执行文件是执行此操作的最佳方式。

如果你把这两件事做对了,它应该就可以工作了。

于 2013-02-19T09:11:30.537 回答