Ошибка при обновлении

При обновлении Ubuntu 12.10 с помощью терминала, используя sudo apt-get upgrade, я получаю эту ошибку

Reading package lists... Done
Building dependency tree       
Reading state information... Done
You might want to run 'apt-get -f install' to correct these.
The following packages have unmet dependencies:
 libtinyxml-dev : Depends: libtinyxml (= 2.6.2-2~ppa1) but it is not installed
E: Unmet dependencies. Try using -f.

Я перепробовал все способы, но не смог решить проблему. Вот результат соответствующих команд. Я попытался sudo apt-cache search libtinyxml, и результат был:

root@nadirhajiyev:/home/nadirhajiyev# sudo apt-cache search libtinyxml
libtinyxml-dev - TinyXml library - header and static library
libtinyxml-doc - TinyXml library - documentation files
libtinyxml2-0.0.0 - C++ XML parsing library
libtinyxml2-dev - TinyXML2 library - header and static library
libtinyxml2.6.2 - C++ XML parsing library
libtinyxml2.6.2-dbg - TinyXml library - debug files
libtinyxml2.5.3 - dummy transitional package from libtinyxml2.5.3 to libtinyxml
libtinyxml2.5.3-dbg - dummy transitional package from libtinyxml2.5.3-dbg to libtinyxml-dbg
libtinyxml - C++ XML parsing library
libtinyxml-dbg - TinyXml library - debug files

Затем apt-get install -y libtinyxml libtinyxml-dev:

root@nadirhajiyev:/home/nadirhajiyev# apt-get install -y libtinyxml libtinyxml-dev
Reading package lists... Done
Building dependency tree       
Reading state information... Done
libtinyxml-dev is already the newest version.
libtinyxml-dev set to manually installed.
The following packages were automatically installed and are no longer required:
  erlang-base erlang-crypto erlang-syntax-tools libqt4-webkit:i386 libsctp1 linux-headers-3.5.0-17 lksctp-tools
  ros-groovy-orocos-kinematics-dynamics 
Use 'apt-get autoremove' to remove them.
The following NEW packages will be installed:
  libtinyxml
0 upgraded, 1 newly installed, 0 to remove and 249 not upgraded.3 not fully installed or removed.
Need to get 0 B/35.4 kB of archives.
After this operation, 139 kB of additional disk space will be used.
(Reading database ... 260756 files and directories currently installed.) 
Unpacking libtinyxml (from .../libtinyxml_2.6.2-2~ppa1_amd64.deb) ...
dpkg: error processing /var/cache/apt/archives/libtinyxml_2.6.2-2~ppa1_amd64.deb (--unpack):
 trying to overwrite '/usr/lib/libtinyxml.so.2.6.2', which is also in package libtinyxml2.6.2 2.6.2-1build1
Errors were encountered while processing:
 /var/cache/apt/archives/libtinyxml_2.6.2-2~ppa1_amd64.deb
E: Sub-process /usr/bin/dpkg returned an error code (1)

Затем apt-get install -y --reinstall libtinyxml libtinyxml-dev:

root@nadirhajiyev:/home/nadirhajiyev# apt-get install -y libtinyxml libtinyxml-dev --reinstall
Reading package lists... Done
Building dependency tree       
Reading state information... Done
The following packages were automatically installed and are no longer required:
  erlang-base erlang-crypto erlang-syntax-tools libqt4-webkit:i386 libsctp1 linux-headers-3.5.0-17 lksctp-tools
  ros-groovy-orocos-kinematics-dynamics
Use 'apt-get autoremove' to remove them.
The following NEW packages will be installed:
  libtinyxml
0 upgraded, 1 newly installed, 1 reinstalled, 0 to remove and 249 not upgraded.
3 not fully installed or removed.
Need to get 0 B/35.4 kB of archives. 
After this operation, 139 kB of additional disk space will be used.
E: Internal Error, No file name for libtinyxml-dev:amd64

Наконец я попытался удали это, но я получил:

root@nadirhajiyev:/home/nadirhajiyev# apt-get purge -y libtinyxml libtinyxml-dev
Reading package lists... Done
Building dependency tree       
Reading state information... Done
Package 'libtinyxml' is not installed, so not removed
You might want to run 'apt-get -f install' to correct these:
The following packages have unmet dependencies:
  ros-groovy-nodelet : Depends: libtinyxml-dev but it is not going to be installed
  ros-groovy-pluginlib : Depends: libtinyxml-dev but it is not going to be installed
  ros-groovy-rospack : Depends: libtinyxml-dev but it is not going to be installed
  ros-groovy-simulator-gazebo : Depends: libtinyxml-dev but it is not going to be installed
  ros-groovy-srdf : Depends: libtinyxml-dev but it is not going to be installed
  ros-groovy-srdfdom : Depends: libtinyxml-dev but it is not going to be installed
  ros-groovy-urdfdom : Depends: libtinyxml-dev but it is not going to be installed
  ros-groovy-urdfdom-headers : Depends: libtinyxml-dev but it is not going to be installed
E: Unmet dependencies. Try 'apt-get -f install' with no packages (or specify a solution).
0
задан 31 March 2013 в 11:38

2 ответа

В вашей системе отсутствуют некоторые зависимости, и вы должны это исправить. Попробуйте выполнить следующую последовательность команд:

$ sudo apt-get update && sudo apt-get -f install -y && sudo apt-get upgrade

Если это не сработает, и вы все равно получите это сообщение об ошибке, попробуйте выполнить:

$ sudo apt-get -m upgrade

Он будет игнорировать отсутствующие пакеты , но может быть немного рискованным.

0
ответ дан 31 March 2013 в 11:38

Наконец-то я смог решить проблему. Проблема была в нарушенных зависимостях. Итак, сначала я построил его снова sudo apt-get build-dep, а затем проверил sudo apt-get check. Он строит нарушенные зависимости, и тогда я смог бы успешно использовать sudo apt-get upgrade:)

0
ответ дан 31 March 2013 в 11:38

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

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