TL; DR: <foobar> is not going to be installed
é uma sugestão de que a dependência <foobar>
tem alguma dependência que não pode ser satisfeita por algum motivo.
Executar novamente apt-get
e incluir explicitamente a dependência problemática na linha de comando deve fornecer uma ideia melhor de onde está o problema.
No caso acima, recebi isso:
~ $ sudo apt-get install php-apcu php-apcu-bc
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:
php-apcu : Depends: phpapi-20151012
php-apcu-bc : Depends: phpapi-20151012
E: Unable to correct problems, you have held broken packages.
e:
~ $ sudo apt-get install php-apcu php-apcu-bc phpapi-20151012
Reading package lists... Done
Building dependency tree
Reading state information... Done
Package phpapi-20151012 is a virtual package provided by:
php7.0-phpdbg 7.0.22-3
php7.0-fpm 7.0.22-3
php7.0-cli 7.0.22-3
php7.0-cgi 7.0.22-3
libphp7.0-embed 7.0.22-3
libapache2-mod-php7.0 7.0.22-3
You should explicitly select one to install.
E: Package 'phpapi-20151012' has no installation candidate
Portanto, o problema aqui é que o pacote originalmente solicitado php-apcu
depende de php-apcu-bc
, que por sua vez depende de phpapi-20151012
. O último não é um pacote diretamente instalável, mas um recurso fornecido por vários pacotes, assim o apt-get não pode determinar automaticamente o que ele precisa instalar.
A causa raiz neste caso específico é que eu tentei instalar o php-apcu
, um pacote PHP7, em um sistema executando o PHP5, para o qual o pacote correto seria php5-apcu
.