web-dev-qa-db-ja.com

候補のパッケージバージョンを変更する方法

コマンドapt-cache policyの出力は次のとおりです。

mobeen@VIP-Ubuntu:~$ apt-cache policy gcc
gcc:
  Installed: (none)
  Candidate: 4:7.2.0-1ubuntu1
  Version table:
     4:7.2.0-1ubuntu1 500
        500 http://kr.archive.ubuntu.com/ubuntu artful/main AMD64 Packages


mobeen@VIP-Ubuntu:~$ apt-cache policy g++
    g++:
      Installed: (none)
      Candidate: 4:7.2.0-1ubuntu1
      Version table:
         4:7.2.0-1ubuntu1 500
            500 http://kr.archive.ubuntu.com/ubuntu artful/main AMD64 Packages

私の理解では、これはいくつかのパッケージに関する情報、どのバージョンがインストールされているか、候補に含まれているか、それはどのバージョンがインストールされることになるかを意味します。

基本的にCUDA 8.0をインストールし、gccを自動的にインストールしますが、gccの候補バージョンが7.2.0であるため、このバージョンをインストールします。ただし、これにより、互換性エラーが発生します。

要約すると、5未満のgccバージョンをインストールする必要があります。

ここで説明されている方法を使用してtorchをインストールしようとしています: link

私が得るエラーは次のとおりです:

In file included from /usr/local/cuda/include/cuda_runtime.h:78:0,
                 from <command-line>:0:
/usr/local/cuda/include/Host_config.h:119:2: error: #error -- unsupported GNU version! gcc versions later than 5 are not supported!
 #error -- unsupported GNU version! gcc versions later than 5 are not supported!
  ^~~~~
In file included from /usr/local/cuda/include/cuda_runtime.h:78:0,
                 from <command-line>:0:
/usr/local/cuda/include/Host_config.h:119:2: error: #error -- unsupported GNU version! gcc versions later than 5 are not supported!
 #error -- unsupported GNU version! gcc versions later than 5 are not supported!
  ^~~~~
In file included from /usr/local/cuda/include/cuda_runtime.h:78:0,
                 from <command-line>:0:
/usr/local/cuda/include/Host_config.h:119:2: error: #error -- unsupported GNU version! gcc versions later than 5 are not supported!
 #error -- unsupported GNU version! gcc versions later than 5 are not supported!
  ^~~~~
In file included from /usr/local/cuda/include/cuda_runtime.h:78:0,
                 from <command-line>:0:
/usr/local/cuda/include/Host_config.h:119:2: error: #error -- unsupported GNU version! gcc versions later than 5 are not supported!
 #error -- unsupported GNU version! gcc versions later than 5 are not supported!
  ^~~~~
CMake Error at THC_generated_THCSleep.cu.o.cmake:207 (message):
  Error generating
  /home/mobeen/torch/extra/cutorch/build/lib/THC/CMakeFiles/THC.dir//./THC_generated_THCSleep.cu.o


lib/THC/CMakeFiles/THC.dir/build.make:665: recipe for target 'lib/THC/CMakeFiles/THC.dir/THC_generated_THCSleep.cu.o' failed
make[2]: *** [lib/THC/CMakeFiles/THC.dir/THC_generated_THCSleep.cu.o] Error 1
make[2]: *** Waiting for unfinished jobs....
CMake Error at THC_generated_THCBlas.cu.o.cmake:207 (message):
  Error generating
  /home/mobeen/torch/extra/cutorch/build/lib/THC/CMakeFiles/THC.dir//./THC_generated_THCBlas.cu.o


lib/THC/CMakeFiles/THC.dir/build.make:476: recipe for target 'lib/THC/CMakeFiles/THC.dir/THC_generated_THCBlas.cu.o' failed
make[2]: *** [lib/THC/CMakeFiles/THC.dir/THC_generated_THCBlas.cu.o] Error 1
CMake Error at THC_generated_THCReduceApplyUtils.cu.o.cmake:207 (message):
  Error generating
  /home/mobeen/torch/extra/cutorch/build/lib/THC/CMakeFiles/THC.dir//./THC_generated_THCReduceApplyUtils.cu.o


lib/THC/CMakeFiles/THC.dir/build.make:286: recipe for target 'lib/THC/CMakeFiles/THC.dir/THC_generated_THCReduceApplyUtils.cu.o' failed
make[2]: *** [lib/THC/CMakeFiles/THC.dir/THC_generated_THCReduceApplyUtils.cu.o] Error 1
CMake Error at THC_generated_THCHalf.cu.o.cmake:207 (message):
  Error generating
  /home/mobeen/torch/extra/cutorch/build/lib/THC/CMakeFiles/THC.dir//./THC_generated_THCHalf.cu.o


lib/THC/CMakeFiles/THC.dir/build.make:2027: recipe for target 'lib/THC/CMakeFiles/THC.dir/THC_generated_THCHalf.cu.o' failed
make[2]: *** [lib/THC/CMakeFiles/THC.dir/THC_generated_THCHalf.cu.o] Error 1
CMakeFiles/Makefile2:172: recipe for target 'lib/THC/CMakeFiles/THC.dir/all' failed
make[1]: *** [lib/THC/CMakeFiles/THC.dir/all] Error 2
Makefile:129: recipe for target 'all' failed
make: *** [all] Error 2

Error: Build error: Failed building.

コマンドを使用してgcc-4.8をインストールしました:

Sudo apt install gcc-4.8

次に、コマンドを使用してシンボリックリンクします:

Sudo ln -s /usr/bin/gcc-4.8 /usr/local/cuda/bin/gcc
Sudo ln -s /usr/bin/g++-4.8 /usr/local/cuda/bin/g++
Sudo ldconfig

しかし、それでも同じエラーが発生します。

1
Mobeen

Ubuntuパッケージシステムでは、gccdefaultGNU Cコンパイラーを提供する依存パッケージです。

デフォルト以外のコンパイラバージョンが必要な場合は、明示的にインストールできます。たとえば、gcc-4.8は artfulで利用可能 です。パッケージソースでuniverseリポジトリを有効にする必要があります。

CUDAに正しいバージョンを検出させるには、おそらく他の手順を実行する必要があります。たとえば、/usr/local/cuda/binディレクトリとシンボリックリンク/usr/bin/gcc-4.8から/usr/local/cuda/bin/gcc

1
steeldriver

要約すると、5未満のgccバージョンをインストールする必要があります。

GCC 4.8.5は17.10のパッケージから入手可能gcc-4

0
fkraiem