依赖到底要怎么修复,用深度系统修复工具的dpkg修复没用
Tofloor
poster avatar
zijinyise
deepin
2019-04-08 22:47
Author


sudo apt-get update
sudo apt-get upgrade
sudo apt autoremove还有百度的方法都用过了,还是解决不了依赖错误的问题,难道只能重装?我搞不定了
Reply Favorite View the author
All Replies
avatar
listenerri
deepin
2019-04-08 23:13
#1
sudo apt install -f
Reply View the author
avatar
14******70@qq.com
deepin
2019-04-08 23:39
#2
本帖最后由 lolimay 于 2019-4-8 15:46 编辑

首先,楼主列出来的三条命令都是和修复依赖没有关系的:
  1. apt update # 更新软件源
  2. apt upgrade # 升级软件包
  3. apt autoremove # 自动卸载不再被使用的软件包
Copy the Code
从楼主截图可以看出是在安装 php5 相关包的时候出现了依赖错误的问题,这里给出几个思路供楼主参考。一种思路是分析依赖关系,头铁尝试手动修复依赖关系:

由截图我们可以分析出,这些软件包的依赖关系大致如上图所示,我们可以按照下面的方法尝试修复这些依赖:
  1. sudo apt purge php5*
  2. sudo apt install php5-gd
Copy the Code

检查相关软件包是否安装成功:
  1. dpkg -l | egrep --color=always 'php5-common|php5-gd'
Copy the Code


如果你的输出和我上面给出的截图一样,则你已经成功安装这两个包了。

另一种方法是把这个包全卸载了,然后换个其他的方式安装 php 环境(如直接下载源码编译安装,虽然过程繁琐单确实可行):
  1. sudo apt purge php5*
  2. tar -zxvf php-5.6.2.tar.gz
  3. cd php-5.6.2/
  4. ./configure --prefix=/www/webserver/php --with-config-file-path=/www/webserver/php/etc --enable-intl --disable-rpath --enable-shared --enable-opcache --enable-fpm --with-mysql=mysqlnd --with-mysqli=mysqlnd --with-pdo-mysql=mysqlnd --with-gettext --enable-mbstring --with-iconv --with-mcrypt --with-mhash --with-openssl --enable-bcmath --enable-soap --enable-pcntl --enable-shmop --enable-sysvmsg --enable-sysvsem --enable-sysvshm --enable-sockets --with-curl --with-zlib --enable-zip --with-bz2 --with-gd --with-freetype-dir --with-jpeg-dir --with-png-dir --with-libxml-dir # 执行这条后,应该会提示很多 Error,根据提示把相关依赖补上,直到满足编译环境
  5. make && make install
Copy the Code

Reply View the author
avatar
BLumia
deepin
2019-04-08 23:42
#3
我比较好奇依赖问题是怎么产生的,是装哪个包的时候遇到的吗?
Reply View the author
avatar
zijinyise
deepin
2019-04-09 01:48
#4
https://bbs.deepin.org/post/176525
首先,楼主列出来的三条命令都是和修复依赖没有关系的:
从楼主截图可以看出是在安装 php5 相关包的时候出现 ...

sudo apt-get --reinstall install `dpkg --get-selections | grep '[[:space:]]install' | cut -f1`
我用过这条命令,重新安装所有的软件并且刷新dpkg目录,还是没用
Reply View the author
avatar
zijinyise
deepin
2019-04-09 01:49
#5
https://bbs.deepin.org/post/176525
我比较好奇依赖问题是怎么产生的,是装哪个包的时候遇到的吗?

用深度系统修复工具清理垃圾后就有了
Reply View the author
avatar
zijinyise
deepin
2019-04-09 02:34
#6
https://bbs.deepin.org/post/176525
首先,楼主列出来的三条命令都是和修复依赖没有关系的:
从楼主截图可以看出是在安装 php5 相关包的时候出现 ...

刚想起来,是安装所有的软件和插件都会出现这个问题,我只是刚好截图这个而已
Reply View the author
avatar
14******70@qq.com
deepin
2019-04-09 04:00
#7
https://bbs.deepin.org/post/176525
刚想起来,是安装所有的软件和插件都会出现这个问题,我只是刚好截图这个而已 ...

你只是想消除掉这个报错吗?那么只需要使用下面命令把相关软件包给卸载掉就行了(如果你不需要使用php5环境的话):
  1. sudo apt purge php5*
Copy the Code
Reply View the author
avatar
avalerian
deepin
2019-04-09 04:07
#8
错综复杂的包依赖是阻碍linux发展的最大障碍,必须推行flatpak包的发展
Reply View the author
avatar
BLumia
deepin
2019-04-09 19:14
#9
https://bbs.deepin.org/post/176525
用深度系统修复工具清理垃圾后就有了

不是吧,清理垃圾应该不会造成依赖问题才对。

虽然信息不足以定位原因但还是要提醒一下,请不要随意跟随百度到的xx教程去下载网上的 xxx.deb 包来安装(同理也不要把其他的非 deepin 源加到 deepin 的源列表里),尽管都是 deb 格式但并不是说只要是 deb 格式的包就可以在所有 debian 系发行版通用的。如果你需要获取某个软件,优先考虑从系统附带的源内安装。
Reply View the author
avatar
jianguo922
deepin
2019-04-09 20:28
#10
必须推行flatpak包的发展
Reply View the author
avatar
justforlxz
deepin
2019-04-09 23:19
#11
我是不是该安利一下我的docker化方案?

https://blog.justforlxz.com/2019/02/21/how-to-use-LNMP-on-deepin/
Reply View the author
avatar
ylxdxx
deepin
2019-04-10 08:13
#12
kirigaya 发表于 2019-4-9 15:19
我是不是该安利一下我的docker化方案?

https://blog.justforlxz.com/2019/02/21/how-to-use-LNMP-on-deep ...

可以呀         
Reply View the author