У меня та же проблема, что и у @Jarle Hammen Knudsen из этого вопроса, но решения, которые работали для них, почему-то не работают для меня. Первоначально я разместил это там, но он был удален, потому что он «не отвечает на вопрос», поэтому я просто задам другой вопрос с тем же именем и тегами. Если это не разрешено, пожалуйста, просто напишите мне с ответом.


Я использую GNURoot Debian v.0.6.12_armhf для запуска Debian 8.10 на моем Samsung Galaxy S5 (модель SM-G903M, Android 5.1.1 "Lollipop"), просто для того, чтобы R на моем телефоне (частично потому, что мой компьютер сломан и отчасти потому, что это более практично). Однако у меня есть пять пакетов, которые были задержаны: r-base, r-base-dev, r-cran-boot, r-cran-codetools и r-рекомендуемые.

Сначала я попробовал решение @Gregory Smitherman, установив один пакет за раз:

root@localhost:/# apt list --upgradable
Listing... Done
r-base/jessie-cran35 3.5.0-1~jessiecran.0 all [upgradable from: 3.3.3-1~bpo8+1]
r-base-dev/jessie-cran35 3.5.0-1~jessiecran.0 all [upgradable from: 3.3.3-1~bpo8+1]
r-cran-boot/jessie-cran35 1.3-20-1.1~jessiecran.0 all [upgradable from: 1.3-13-1]
r-cran-codetools/jessie-cran35 0.2-15-1.1~jessiecran.0 all [upgradable from: 0.2-9-1]
r-recommended/jessie-cran35 3.5.0-1~jessiecran.0 all [upgradable from: 3.3.3-1~bpo8+1]

root@localhost:/# apt-get install r-base
Reading package lists... Done
Building dependency tree
Reading state information... Done
Some packages could not be installed. This may mean that you have requested an impossible situation or if you are using the unstable distribution that some required packages have not yet been created or been moved out of Incoming.
The following information may help to resolve the situation:
The following packages have unmet dependencies:
r-base : Depends: r-base-core (>= 3.5.0-1~jessiecran.0) but 3.3.3-1~bpo8+1 is to be installed
        Depends: r-recommended (= 3.5.0-1~jessiecran.0) but 3.3.3-1~bpo8+1 is to be installed
E: Unable to correct problems, you have held broken packages.

Затем я попытался установить зависимости по одному:

root@localhost:/# apt-get install r-base-core
Reading package lists... Done
Building dependency tree
Reading state information... Done
r-base-core is already the newest version. 
r-base-core set to manually installed.
0 upgraded, 0 newly installed, 0 to remove and 5 not upgraded.

Затем я попытался использовать apt-get install -f чтобы исправить зависимости по одному:

root@localhost:/# apt-get install -f r-base
Reading package lists... Done
Building dependency tree
Reading state information... Done
Some packages could not be installed. This may mean that you have requested an impossible situation or if you are using the unstable distribution that some required packages have not yet been created or been moved out of Incoming.
The following information may help to resolve the situation:
The following packages have unmet dependencies:
r-base : Depends: r-base-core (>= 3.5.0-1~jessiecran.0) but 3.3.3-1~bpo8+1 is to be installed
        Depends: r-recommended (= 3.5.0-1~jessiecran.0) but 3.3.3-1~bpo8+1 is to be installed
E: Unable to correct problems, you have held broken packages.

Тогда я попробовал все сразу:

  root@localhost:/# apt-get install -f r-base r-base-core r-base-dev r-cran-boot r-cran-codetools r-recommended
  Reading package lists... Done
  Building dependency tree
  Reading state information... Done
  r-base-core is already the newest version.
  Some packages could not be installed. This may mean that you have requested an impossible situation or if you are using the unstable distribution that some required packages have not yet been created or been moved out of Incoming.
  The following information may help to resolve the situation:
  The following packages have unmet dependencies:
  r-base : Depends: r-base-core (>= 3.5.0-1~jessiecran.0) but 3.3.3-1~bpo8+1 is to be installed
  r-base-dev : Depends: r-base-core (>= 3.5.0-1~jessiecran.0) but 3.3.3-1~bpo8+1 is to be installed
  r-cran-boot : Depends: r-base-core (>= 3.5.0-1~jessiecran.0) but 3.3.3-1~bpo8+1 is to be installed
            Depends: r-api-3.5 but it is not installable
  r-cran-codetools : Depends: r-base-core (>= 3.5.0-1~jessiecran.0) but 3.3.3-1~bpo8+1 is to be installed
            Depends: r-api-3.5 but it is not installable
  r-recommended : Depends: r-base-core (>= 3.5.0-1~jessiecran.0) but 3.3.3-1~bpo8+1 is to be installed
  E: Unable to correct problems, you have held broken packages.

Затем я попробовал второе альтернативное решение @Dimuth Tharaka Menikgama:

  root@localhost:/# apt list --upgradable Listing... Done
  r-base/jessie-cran35 3.5.0-1~jessiecran.0 all [upgradable from: 3.3.3-1~bpo8+1]
  r-base-dev/jessie-cran35 3.5.0-1~jessiecran.0 all [upgradable from: 3.3.3-1~bpo8+1]
  r-cran-boot/jessie-cran35 1.3-20-1.1~jessiecran.0 all [upgradable from: 1.3-13-1]
  r-cran-codetools/jessie-cran35 0.2-15-1.1~jessiecran.0 all [upgradable from: 0.2-9-1]
  r-recommended/jessie-cran35 3.5.0-1~jessiecran.0 all [upgradable from: 3.3.3-1~bpo8+1]
  root@localhost:/# sudo apt-get -s dist-upgrade
  Reading package lists... Done
  Building dependency tree
  Reading state information... Done
  Calculating upgrade... Done
  0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.

Тогда я попробовал оригинальное решение @ GAD3R:

  root@localhost:/# sudo apt-get dist-upgrade
  Reading package lists... Done
  Building dependency tree
  Reading state information... Done
  Calculating upgrade... Done
  0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.

Но все же проблема осталась:

  root@localhost:/# apt list --upgradable
  Listing... Done
  r-base/jessie-cran35 3.5.0-1~jessiecran.0 all [upgradable from: 3.3.3-1~bpo8+1]
  r-base-dev/jessie-cran35 3.5.0-1~jessiecran.0 all [upgradable from: 3.3.3-1~bpo8+1]
  r-cran-boot/jessie-cran35 1.3-20-1.1~jessiecran.0 all [upgradable from: 1.3-13-1]
  r-cran-codetools/jessie-cran35 0.2-15-1.1~jessiecran.0 all [upgradable from: 0.2-9-1]
  r-recommended/jessie-cran35 3.5.0-1~jessiecran.0 all [upgradable from: 3.3.3-1~bpo8+1]

Наконец, я попробовал apt-get update и apt-get upgrade , но в этот раз это не сработало больше, чем в прошлый раз, когда я попробовал.

  root@localhost:/# apt-get update
  [censored because I don't have 10 points of reputation and these count as links]
  Fetched 445 kB in 18s (23.9 kB/s)
  Reading package lists... Done
  root@localhost:/# apt-get upgrade
  Reading package lists... Done
  Building dependency tree
  Reading state information... Done
  Calculating upgrade... Done
  The following packages have been kept back:
    r-base r-base-dev r-cran-boot r-cran-codetools
    r-recommended
  0 upgraded, 0 newly installed, 0 to remove and 5 not upgraded.

Пожалуйста, помогите, предоставив решение, которое обновляет / обновляет пять вышеупомянутых пакетов.

1 ответ1

1

У вас есть архитектура armhf. Репозиторий CRAN Debian содержит только двоичные файлы amd64 и i386. Однако некоторые пакеты не содержат специфичные для архитектуры двоичные файлы (например, r-base , r-base-dev , r-cran-boot ...). Апт рассмотрит это. Однако репозитории Debian имеют только R 3.3.3, поэтому зависимости от пакетов, не зависящие от архитектуры, не могут быть разрешены.

tl; dr: придерживайтесь пакетов Debian или соберите недостающие пакеты самостоятельно.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .