Как изменить версию пакета в кандидате?

Вывод команды 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, это устанавливает эту версию. Однако это впоследствии дает ошибки совместимости.

Таким образом: Я должен установить gcc версию меньше чем 5.

Я пытаюсь установить torch использование метода, описанного здесь: ссылка.

Ошибка, которую я получаю:

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

и затем symlinked это при помощи команды:

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
задан 2 November 2017 в 07:23

2 ответа

В системе пакетов Ubuntu gcc является пакетом зависимостей, обеспечивающим компилятор GNU C по умолчанию .

Если вы хотите версию компилятора, отличную от версии по умолчанию, вы можете установить ее явно - например, gcc-4.8 доступен в artful . Вам нужно будет включить репозиторий universe в исходных текстах вашего пакета.

Вероятно, вам придется предпринять другие шаги, чтобы заставить CUDA найти правильные версии - например, создать каталог /usr/local/cuda/bin и символически связать /usr/bin/gcc-4.8 с /usr/local/cuda/bin/gcc

1
ответ дан 7 December 2019 в 15:28

Таким образом: Я должен установить gcc версию меньше чем 5.

GCC 4.8.5 доступен в 17,10 от пакета gcc-4.

0
ответ дан 7 December 2019 в 15:28

Другие вопросы по тегам:

Похожие вопросы: