Ajude-me a corrigir meus packagaes

0

Recentemente eu tentei instalar o gcc e o g ++ 6 na minha distribuição do Ubuntu, mas algo quebrou e o gcc e o g ++ 5.3 foram desinstalados junto com o cuda. Eu consertei usando o aptitude para instalar o cuda e obtive g ++ e gcc e algumas libs de volta

Agora, toda vez que eu tento executar um apt-get update e apt-get dist-upgrade , obtenho isso

The following packages were automatically installed and are no longer required:
  cuda-cublas-9-0 cuda-cublas-dev-9-0 cuda-cudart-9-0 cuda-cudart-dev-9-0
  cuda-cufft-9-0 cuda-cufft-dev-9-0 cuda-curand-9-0 cuda-curand-dev-9-0
  cuda-cusolver-9-0 cuda-cusolver-dev-9-0 cuda-cusparse-9-0
  cuda-cusparse-dev-9-0 cuda-driver-dev-9-0 cuda-libraries-9-0
  cuda-libraries-dev-9-0 cuda-license-9-0 cuda-misc-headers-9-0 cuda-npp-9-0
  cuda-npp-dev-9-0 cuda-nvgraph-9-0 cuda-nvgraph-dev-9-0 cuda-nvml-dev-9-0
  cuda-nvrtc-9-0 cuda-nvrtc-dev-9-0 freeglut3 freeglut3-dev libdrm-dev
  libgl1-mesa-dev libglu1-mesa-dev libx11-xcb-dev libxcb-dri2-0-dev
  libxcb-dri3-dev libxcb-glx0-dev libxcb-present-dev libxcb-randr0-dev
  libxcb-render0-dev libxcb-shape0-dev libxcb-sync-dev libxcb-xfixes0-dev
  libxdamage-dev libxext-dev libxfixes-dev libxi-dev libxmu-dev libxmu-headers
  libxshmfence-dev libxxf86vm-dev mesa-common-dev nvidia-modprobe
  x11proto-damage-dev x11proto-dri2-dev x11proto-fixes-dev x11proto-gl-dev
  x11proto-xext-dev x11proto-xf86vidmode-dev
Use 'sudo apt autoremove' to remove them.
The following packages will be REMOVED:
  bbswitch-dkms build-essential cuda cuda-9-0 cuda-command-line-tools-9-0
  cuda-core-9-0 cuda-demo-suite-9-0 cuda-documentation-9-0 cuda-drivers
  cuda-runtime-9-0 cuda-samples-9-0 cuda-toolkit-9-0 cuda-visual-tools-9-0
  dkms g++ g++-5 gcc gcc-5 libcuda1-384 nvidia-384 nvidia-384-dev
  nvidia-opencl-icd-384 nvidia-prime
The following packages will be upgraded:
  albert code cpp-5 gcc-5-base libasan2 libdrm-amdgpu1 libdrm-amdgpu1:i386
  libdrm-common libdrm-dev libdrm-intel1 libdrm-intel1:i386 libdrm-nouveau2
  libdrm-nouveau2:i386 libdrm-radeon1 libdrm-radeon1:i386 libdrm2 libdrm2:i386
  libegl1-mesa libgbm1 libgcc-5-dev libgl1-mesa-dev libgl1-mesa-dri
  libgl1-mesa-dri:i386 libgl1-mesa-glx libgl1-mesa-glx:i386 libglapi-mesa
  libglapi-mesa:i386 libmpx0 libobjc-5-dev libstdc++-5-dev
  libwayland-egl1-mesa libxatracker2 mesa-common-dev slack-desktop
34 upgraded, 0 newly installed, 23 to remove and 0 not upgraded.
Need to get 122 MB of archives.
After this operation, 1,411 MB disk space will be freed.

Parece que cuda, gcc e g ++ serão removidos novamente. Como eu consertaria isso?

EDITAR:

Este é o comando que quebrou o gcc e g + + para começar com

sudo apt-get update && \nsudo apt-get install build-essential software-properties-common -y && \nsudo add-apt-repository ppa:ubuntu-toolchain-r/test -y && \nsudo apt-get update && \nsudo apt-get install gcc-snapshot -y && \nsudo apt-get update && \nsudo apt-get install gcc-6 g++-6 -y && \nsudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-6 60 --slave /usr/bin/g++ g++ /usr/bin/g++-6 && \nsudo apt-get install gcc-4.8 g++-4.8 -y && \nsudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-4.8 60 --slave /usr/bin/g++ g++ /usr/bin/g++-4.8
    
por Srini 24.10.2017 / 18:16

1 resposta

1

O Apt mantém um registro dos pacotes que você especifica usando um sistema chamado apt-marking .

O Apt tentará apenas autorecuperar dependências. Isso é importante. O Apt não autorizará nada que você explicitamente diga que deseja instalar até que você diga explicitamente que deseja desinstalá-lo.

É simples assim.

Existem várias maneiras de dizer ao apt o que você deseja. Ambos os comandos alteram a marcação do apt:

sudo apt install packagename       (also installs the package, if not already installed)
sudo apt-mark manual packagename   (changes the marking only)

Exemplo: se você deseja manter os pacotes cuda e gcc e impedir a remoção automática: sudo apt install cuda gcc

Para mais informações, consulte man apt-mark

    
por user535733 24.10.2017 / 19:06