Digamos que tenho os seguintes pacotes desatualizados:
- foo
- Barra
- baz
Quero atualizar o maior número possível deles, então tento executar:
sudo port -n -f upgrade outdated
No entanto, isso falha com:
Error: org.macports.build for port foo returned: command execution failed
Please see the log file for port foo for details: ...
Como posso fazer o macports tentar atualizar bar e baz, se o foo falhar?
Eu geralmente gostaria que os macports tentassem instalar / atualizar outras portas se a instalação / atualização de algumas delas falhar e continuar.
Na página do manual:
-f force mode (ignore state file)
-n don't upgrade dependencies (affects upgrade and install)
Edit: foo, bar & baz, são 3 portas independentes total, que não dependem uma da outra de forma alguma.
Edit 2: Da próxima vez que eu executar isso, as portas desatualizadas podem ser a, b & c, em vez de foo, bar & baz, por isso não posso codificar as que estão com falha e não posso:
sudo port update foo
sudo port update bar
sudo port update baz
MacPorts dev aqui; a resposta correta para sua pergunta é: você não.
Há uma razão pela qual o MacPorts não tenta instalar um pacote quando uma dependência falha na criação.
Esta pergunta exata foi discutida na lista de discussão macports-users não faz muito tempo:
http://lists.macosforge.org/pipermail/macports-users/2012-July/029904.html
http://lists.macosforge.org/pipermail/macports-users/2012-July/029984.html
fonte
Você também pode especificar "desatualizado e não falsificado" no comando de atualização, em vez de apenas "desatualizado".
fonte
Considerando um antigo ticket fechado, um defeito foi corrigido:
333 (falha de dependência é ignorada e a porta continua tentando e instala) - MacPorts
Se bem entendi: continuar seguindo uma falha pode, em alguns casos, estar com defeito.
Em outras palavras:
Postscript: Eu estava com preguiça de ler a página de manual por completo (não encontrada no menu Ajuda do Terminal, mas isso não é desculpa). Seguindo o conselho de alguém
irc://irc.freenode.net/#macports
, decidi deixar essa resposta.Eu nunca percebi a
-p
opção. Graças ao Tyilo.fonte