16 votes

MacPorts : Continuer à installer d'autres mises à jour après l'erreur

Disons que j'ai les paquets périmés suivants :

  • foo
  • bar
  • baz

Je veux en mettre à jour autant que possible, alors j'essaie de courir :

sudo port -n -f upgrade outdated

Cependant, cela échoue avec :

Error: org.macports.build for port foo returned: command execution failed
Please see the log file for port foo for details: ...

Comment puis-je faire en sorte que macports essaie de mettre à jour bar et baz, si foo échoue ?

Je voudrais que macports essaie d'installer/mettre à niveau d'autres ports si l'installation/mise à niveau de certains d'entre eux échoue et continue simplement.


De la page de manuel :

 -f       force mode (ignore state file)

 -n       don't upgrade dependencies (affects upgrade and install)

Edit : foo, bar & baz, sont 3 ports totalement indépendants, qui ne dépendent pas les uns des autres en aucune façon.


Edit 2 : La prochaine fois que je l'exécuterai, les ports périmés pourraient être a, b & c, au lieu de foo, bar & baz, donc je ne peux pas coder en dur les ports défaillants et je ne peux pas simplement faire :

sudo port update foo
sudo port update bar
sudo port update baz

12voto

Tyilo Points 5337

Le site -p semble fonctionner pour moi.

De la page de manuel :

\-p       Despite any errors encountered, proceed to process multiple
         ports and commands.

5voto

Clemens Lang Points 51

Ici MacPorts dev ; la réponse correcte à votre question est : vous ne le faites pas.

Il y a une raison pour laquelle MacPorts ne tente pas d'installer un paquet lorsqu'une dépendance ne se construit pas.

Cette question exacte a été discutée sur la liste de diffusion macports-users il n'y a pas si longtemps :

5voto

Joshua Root Points 51

Vous pouvez également spécifier "outdated and not foo" dans la commande de mise à niveau, plutôt que simplement "outdated".

2voto

Graham Perrin Points 7373

Considérant un ancien ticket fermé, un défaut qui a été corrigé :

333 (les échecs de dépendance sont ignorés et le port continue à essayer de s'installer) - MacPorts

Si je comprends bien : continuer après un échec peut, dans certains cas, être défectueux.

En d'autres termes :

  • il est approprié (moins risqué) de pas continuer.

Post-scriptum : J'étais trop paresseux pour lire la page man dans son intégralité (non trouvée par le menu Aide de Terminal, mais ce n'est pas une excuse). Suite aux conseils de quelqu'un de irc://irc.freenode.net/#macports J'ai décidé de laisser cette réponse.

enter image description here

Je n'ai jamais réalisé que le -p option. Merci à Tyilo.

LesApples.com

LesApples est une communauté de Apple où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres utilisateurs d'appareils Apple, poser vos propres questions ou résoudre celles des autres.

Powered by:

X