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

Вывод команды 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, используя описанный здесь метод: 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
задан 2 November 2017 в 08:23

4 ответа

Вкратце: мне нужно установить версию gcc меньше 5.

GCC 4.8.5 доступна в 17.10 из пакета gcc-4.

0
ответ дан 18 July 2018 в 04:12

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

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

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

1
ответ дан 18 July 2018 в 04:12
Вкратце: мне нужно установить версию gcc меньше 5.

GCC 4.8.5 доступна в 17.10 из пакета gcc-4.

0
ответ дан 24 July 2018 в 18:01

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

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

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

1
ответ дан 24 July 2018 в 18:01
  • 1
    Я следил за вашим методом, но все же я получаю ошибку, когда пытаюсь построить факел, используя описанный здесь метод: link . Я обновил вопрос об ошибке, которую я получаю при создании факела. – Mobeen 1 November 2017 в 07:11
  • 2
    Повторно проверьте используемую команду связи - она ​​должна быть ln не ld, а цель должна быть /usr/local/cuda/bin/gcc не /usr/local/cuda/gcc/bin. Если ваш код использует g++, вам нужно будет повторить процесс для g++-4.8. См. Например, CUDA, несовместимый с моей версией gcc – steeldriver 1 November 2017 в 15:33
  • 3
    Я сделал то же, что и вы, я ошибаюсь. Все еще не работает. – Mobeen 2 November 2017 в 08:23

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

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