MacPorts: continua ad installare altri aggiornamenti dopo l'errore

11

Supponiamo di avere i seguenti pacchetti obsoleti:

  • foo
  • bar
  • baz

Voglio aggiornarne il maggior numero possibile, quindi cerco di eseguire:

sudo port -n -f upgrade outdated

Tuttavia questo fallisce con:

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

Come posso fare in modo che i Macport provino ad aggiornare la barra e baz, se fallisce?

In generale vorrei che i Macport provassero ad installare / aggiornare altre porte se l'installazione / aggiornamento di alcuni di essi fallisce e basta continuare.

Dalla pagina man:

 -f       force mode (ignore state file)

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

Modifica: foo, bar & baz, sono 3 porte totali non correlate, che non dipendono l'una dall'altra in alcun modo.

Modifica 2: La prossima volta che eseguo questo, le porte obsolete potrebbero essere a, b & c, invece di foo, bar & baz, quindi non riesco a codificare i guasti e non posso fare solo:

sudo port update foo
sudo port update bar
sudo port update baz
    
posta Tyilo 26.09.2012 - 07:45
fonte

4 risposte

8

Il -p sembra funzionare per me.

Dalla manpage:

-p       Despite any errors encountered, proceed to process multiple
         ports and commands.
    
risposta data 27.09.2012 - 00:08
fonte
5

MacPorts dev qui; la risposta corretta alla tua domanda è: non lo fai.

C'è una ragione per cui MacPorts non tenta di installare un pacchetto quando una dipendenza non riesce a costruire.

Questa esatta domanda è stata discussa sulla mailing list di macports-users non molto tempo fa:

  • "Come procedere con gli errori precedenti?"
    link
  • e il thread di follow-up "-p considerato problematico"
    link
risposta data 06.10.2012 - 13:26
fonte
5

Puoi anche specificare "obsoleto e non pippo" nel comando di aggiornamento, piuttosto che solo "obsoleto".

    
risposta data 06.10.2012 - 20:06
fonte
1

Considerando un vecchio ticket chiuso, un difetto corretto:

333 (l'errore di dipendenza viene ignorato e la porta continua a provare e installare) - MacPorts

Se ho capito bene: continuare a seguire un errore può, in alcuni casi, essere difettoso.

In altre parole:

  • è corretto (meno rischioso) per non continua.

Postscript: ero troppo pigro per leggere la pagina man nella sua interezza (non trovata dal menu Aiuto di Terminal, ma non è una scusa). Seguendo il consiglio di qualcuno in irc://irc.freenode.net/#macports ho deciso di lasciare questa risposta.

Non ho mai realizzato l'opzione -p . Grazie a Tyilo.

    
risposta data 26.09.2012 - 08:38
fonte

Leggi altre domande sui tag