首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >帮我修理我的包装

帮我修理我的包装
EN

Ask Ubuntu用户
提问于 2017-10-24 16:16:37
回答 1查看 168关注 0票数 0

最近,我试图在我的ubuntu发行版上安装gcc和g++6,但是有东西坏了,gcc和g++ 5.3和cuda一起卸载了。我用天资安装了库达,得到了g++,gcc和一些libs。

现在,每当我尝试运行apt-get updateapt-get dist-upgrade时,我都会得到以下信息

代码语言:javascript
复制
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.

看来,库达、gcc和g++将再次被撤职。我该怎么解决这个问题?

编辑:

这是gcc和g++开始时的命令

代码语言:javascript
复制
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
EN

回答 1

Ask Ubuntu用户

回答已采纳

发布于 2017-10-24 17:06:59

Apt使用名为apt标记的系统跟踪您指定的包。

Apt只会尝试自动删除依赖项。这一点很重要。除非明确表示要卸载,否则Apt不会自动删除您明确表示要安装的任何内容。

就这么简单。

有几种方法可以告诉你想要什么。这些命令都更改了apt标记:

代码语言:javascript
复制
sudo apt install packagename       (also installs the package, if not already installed)
sudo apt-mark manual packagename   (changes the marking only)

示例:如果希望保留cudagcc包并防止自动删除:sudo apt install cuda gcc

有关更多信息,请参见man apt-mark

票数 1
EN
页面原文内容由Ask Ubuntu提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://askubuntu.com/questions/968654

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档