【问题标题】:cuda install error on Ubuntu 17.04Ubuntu 17.04 上的 cuda 安装错误
【发布时间】:2017-09-27 22:09:17
【问题描述】:
   abigail@abilina:~/Downloads$ sudo dpkg -i cuda-repo-ubuntu1604_8.0.61-1_amd64.deb
Selecting previously unselected package cuda-repo-ubuntu1604.
(Reading database ... 205999 files and directories currently installed.)
Preparing to unpack cuda-repo-ubuntu1604_8.0.61-1_amd64.deb ...
Unpacking cuda-repo-ubuntu1604 (8.0.61-1) ...
Setting up cuda-repo-ubuntu1604 (8.0.61-1) ...
Warning: The postinst maintainerscript of the package cuda-repo-ubuntu1604
Warning: seems to use apt-key (provided by apt) without depending on gnupg or gnupg2.
Warning: This will BREAK in the future and should be fixed by the package maintainer(s).
Note: Check first if apt-key functionality is needed at all - it probably isn't!
Warning: apt-key should not be used in scripts (called from postinst maintainerscript of the package cuda-repo-ubuntu1604)
OK

abigail@abilina:~/Downloads$ sudo apt-get install cuda
Reading package lists... Done
Building dependency tree       
Reading state information... Done
Some packages could not be installed. This may mean that you have
requested an impossible situation or if you are using the unstable
distribution that some required packages have not yet been created
or been moved out of Incoming.
The following information may help to resolve the situation:

The following packages have unmet dependencies:
 cuda : Depends: cuda-8-0 (>= 8.0.61) but it is not going to be installed
E: Unable to correct problems, you have held broken packages.

我的 ubuntu 版本是 17.04。这是否意味着我的 Linux 目前无法安装 CUDA?我想安装支持 GPU 的 TensorFlow。

根据建议:

abigail@abilina:~/Downloads$ sudo apt-get -f install
Reading package lists... Done
Building dependency tree       
Reading state information... Done
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.

【问题讨论】:

标签: tensorflow cuda


【解决方案1】:

https://launchpad.net/ubuntu/zesty/amd64/nvidia-cuda-toolkit

以上是正确的。

apt-get install nvidia-cuda-toolkit

但请记住,通过 apt 安装的 cuda 安装在不同的位置。为includelib64bin手动创建ln -s/usr/local/cuda

【讨论】:

  • 有没有一种简单的方法可以知道哪些文件属于 cuda 来创建这些符号链接?似乎将 cuda 文件放在通用 bin 包含和 lib 路径中......另外,有没有办法获取 CUDA 示例文件?
  • @Mr.WorshipMe 您可以从 nvidia cuda 下载页面解压缩包以获取示例。并使用dpkg -L package-name 获取安装位置(可能是一个很长的列表)
【解决方案2】:

我已经在 Ubuntu 17.04 上成功安装了 CUDA 8.0 + NVIDIA 的最新补丁:

  1. https://developer.nvidia.com/cuda-downloads 下载 .run 文件,选择 Ubuntu 16.04(基本安装程序)
  2. 您将无法通过仅运行来安装它,因为它正在寻找一个名为 InstallUtils.pm 的文件,该文件在 Ubuntu 17.04 中不存在,但奇怪的是,它存在于 .run 文件中 - 所以:解压缩 .使用./cuda*.run --tar mxvf 运行文件
  3. 将 InstallUtils.pm(应该在 /bin 路径中)复制到 /usr/lib/x86_64-linux-gnu/perl-base
  4. 运行安装程序(您可能想对驱动程序安装步骤说不,以保留您通过 apt 安装的那个 - 我使用的是 381.22,因为 .run 文件提供的 375.26 不支持我的 1080ti)
  5. gcc 6 与 CUDA 不兼容,但这在编译示例文件时很容易解决:只需将 export EXTRA_NVCCFLAGS="-Xcompiler -std=c++98" 添加到您的 bashrc 文件中,然后注释掉

来自其中一个标头(我认为它是 host_config.h,但是一旦您尝试编译就会看到它)- 注释掉这些行:

#if __GNUC__ > 5 || (__GNUC__ == 5 && __GNUC_MINOR__ > 3)
     #error -- unsupported GNU version! gcc versions later than 5.3 are not supported!

这都是凭记忆,所以希望它足够准确。

感谢这些有用的帖子,我设法找到了这个解决方案:

https://devtalk.nvidia.com/default/topic/983777/can-t-locate-installutils-pm-in-inc/

https://devtalk.nvidia.com/default/topic/949770/cuda-8-0rc-supporting-gcc6-/

【讨论】:

  • 你可能需要先做sudo chmod a+x cuda*,然后再做--tar
【解决方案3】:

对于 ubuntu 17.04,我必须使用 cuda 9.0(deb 版本) https://developer.nvidia.com/cuda-release-candidate-download

否则我无法让它工作。 Cuda 8.0 需要 gcc 5.3.1,但 cuda 9.0 与自动安装在 ubuntu 17.04 上的 gcc 6.3.0 兼容。

【讨论】:

    【解决方案4】:

    更准确地说,这就是我所做的:

    在 Ubuntu 17.04 上,安装 CUDA 9.0 — 您目前可以下载 beta 版本 https://developer.nvidia.com/cuda-release-candidate-download

    我下载了 .deb 文件,没有遇到任何问题 — 按照他们在下载 cuda 9.0 时推荐的步骤操作

    sudo dpkg -i cuda-repo-ubuntu1704-9-0-local-rc_9.0.103-1_amd64.deb

    sudo apt-key add /var/cuda-repo-9.0-local-rc/7fa2af80.pub

    sudo apt-get update

    sudo apt-get install cuda

    然后按照 nvidia 说明中的安装后步骤(即设置 PATH 和 LD_LIBRARY_PATH) http://docs.nvidia.com/cuda/cuda-installation-guide-linux/index.html#post-installation-actions)

    export PATH=/usr/local/cuda-9.0/bin${PATH:+:${PATH}}

    export LD_LIBRARY_PATH=/usr/local/cuda-9.0/lib64 ${LD_LIBRARY_PATH:+:${LD_LIBRARY_PATH}}

    Cuda 9 与 gcc 6.3.0(17.04 附带)兼容。我使用了 arch=sm_52,有时我的 make 文件必须“make clean”。

    【讨论】:

      【解决方案5】:

      就我而言,安装 Cuda 9.0 是最简单的解决方案。

      或者,如果您更喜欢 cuda 8,您可以下载 deb 文件,然后使用命令

      dpkg-deb -x cuda_8.*.deb /usr/local/cuda-8.0

      从 deb 文件中提取内容并将它们放置在所需的目录中。

      来源:http://docs.nvidia.com/cuda/cuda-installation-guide-linux/index.html#advanced-setup)

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2018-09-05
        • 2017-09-21
        • 1970-01-01
        • 1970-01-01
        • 2018-01-16
        • 2018-01-24
        • 2017-11-28
        相关资源
        最近更新 更多