2010-06-11 7 views
12

Sto solo provando a creare un semplice aggiornamento (che ho già fatto prima) per un'app per iphone, ma ora per qualche ragione sto ricevendo questo errore. Qualcuno può dirmi cosa significa?errore di generazione di iphone che mi fa venir voglia di acquistare una pistola sparachiodi

Command/Developer/Library/Xcode/Plug-ins/CoreBuildTasks.xcplugin/Contents/Resources/copyplist failed with exit code 127 
sh: plutil: command not found 

ecco i risultati Corporatura:

CopyPNGFile /Users/me/path/build/Dist-iphoneos/MyApp.app/img_000.png images/img_000.png 
    cd /Users/me/ 
    setenv COPY_COMMAND /Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp 
    setenv PATH "/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin:/Developer/usr/bin:/System/Library/Frameworks/JavaVM.frameworK/Versions/1.6/Home/" 
    "/Developer/Platforms/iPhoneOS.platform/Developer/Library/Xcode/Plug-ins/iPhoneOS Build System Support.xcplugin/Contents/Resources/copypng" -compress "" /Users/path/images/img_000.png /Users/me/path/build/Dist-iphoneos/MyApp.app/img_000.png 
sh: dirname: command not found 

CopyPlistFile /Users/me/path/build/Dist-iphoneos/MyApp.app/Entitlements.plist Entitlements.plist 
    cd /Users/me/ 
    setenv PATH "/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin:/Developer/usr/bin:/System/Library/Frameworks/JavaVM.frameworK/Versions/1.6/Home/" 
    /Developer/Library/Xcode/Plug-ins/CoreBuildTasks.xcplugin/Contents/Resources/copyplist --convert binary1 Entitlements.plist --outdir /Users/me/path/build/Dist-iphoneos/MyApp.app 
sh: plutil: command not found 
+4

+1 per immagini nailgun ... Hai controllato tutte le impostazioni di Target, Build? L'ultima volta che ho avuto un problema simile è stato causato da spazi bianchi all'inizio di uno dei campi delle impostazioni. –

+0

sì, ho guardato oltre quelle volte. È interessante notare che non esiste un solo risultato di ricerca su google per il codice di uscita 127. – sol

+0

ha provato a copiare/incollare quei comandi nel terminale? Potrebbe anche essere qualcosa di borked e ha bisogno di un riavvio. –

risposta

0

plutil risiede di solito in /usr/bin. Assicurati che sia lì. In caso contrario, potresti aver installato gli Strumenti per sviluppatori senza deselezionare (o con deselezionando) la casella di controllo Strumenti di sistema, che colloca gli strumenti di programmazione di base per Mac OS X in/usr.

+0

/usr/bin relativo a quale directory? Facendo una ricerca per cartelle chiamate "usr" mostra circa 30 cartelle. Se questo è il problema come posso risolverlo? – sol

+0

Se inizia con una barra, è un percorso assoluto, non relativo. C'è una directory/usr/bin sul disco di avvio del sistema operativo, ed è qui che si trovano strumenti come plutil. (Non viene visualizzato nel Finder. Devi utilizzare Vai alla cartella per arrivarci, oppure guardare usando la riga di comando del Terminale.) Se non ci sono, reinstallare Xcode Tools e assicurati di controllare gli Strumenti di sistema casella di controllo. – cdespinosa

+0

ok, ho verificato che esiste plutil. Ho anche reinstallato l'intero pacchetto Xcode/iphone, con gli strumenti di sistema selezionati. Ora ottengo lo stesso errore anche perché ho appena provato a costruire con Simulator/Debug. Eccezionale. – sol

0

Ho provato a reinstallare l'SDK?

+0

Stavo per provarlo, ma quando ho scaricato l'SDK ho scoperto che Snow Leopard è ora richiesto. Sono andato a scaricare Snow Leopard, ho scoperto che si tratta di un acquisto "solo scatola". Ogni volta che penso di non poter più detestare Apple, trovano un altro modo ... Perché non possono offrire download di versioni precedenti? – sol

+1

Forse perché Snow Leopard è * non * una versione precedente, ma in realtà la versione * corrente * al momento della stesura. D'altra parte, sono d'accordo che tutti i loro sistemi operativi dovrebbero essere disponibili come download (a pagamento). –

+0

Penso che il sol stia cercando versioni precedenti dell'SDK. Prova a fare clic su "Mac Dev Center", "Download sviluppatori", "Strumenti per sviluppatori" e scarica Xcode 3.1.4. Non ha l'SDK dell'iPhone ma non dovrebbe sovrascriverlo (tenere un backup di/Developer/Platforms, per ogni evenienza). Ho appena scaricato tutto immediatamente quando rilasciato e archiviato per momenti come questo. –

1

È possibile che la variabile di ambiente del percorso non sia impostata in qualche modo?

si dispone di:

setenv PATH "/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin:/Developer/usr/bin:/System/Library/Frameworks/JavaVM.frameworK/Versions /1.6/Home/ " /Developer/Library/Xcode/Plug-ins/CoreBuildTasks.xcplugin/Contents/Resources/copyplist --convert binary1 Entitlements.plist --outdir/Users/me/path/build/Dist-iphoneos/MyApp.app

Mentre spettacolo:

PATH setenv "/Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin:/Developer/usr/bin:/opt/local/bin:/usr/local/bin:/bin:/sbin:/usr/ bin:/usr/sbin " builtin-infoPlistUtility test34-Info.plist -genpkginfo /Users/gnd/Desktop/test34/build/Debug-iphonesimulator/test34.app/PkgInfo -expandbuildsettings -formato iphonesimulator binario -platform -o/Users /gnd/Desktop/test34/build/Debug-iphonesimulator/test34.app/Info.plist

non vedo/usr/bin nel tuo percorso.

(nel terminale:
echo $ PATH {}

anche se la maggior parte delle applicazioni GUI OS X ottengono il loro percorso da ~/.MacOSX/environment.plist non al 100% sicuro di Xcode se


. Informazione supplementare:

dal 'man bash' pagina:

Quando bash è invocata come shell di login interattiva, o come shell non interattiva con l'opzione --login, prima legge e esegue i comandi dal file/etc/profile, se questo file esiste. Dopo aver letto quel file, cerca ~/.bash_profile, ~/.bash_login e ~/.profile, in quell'ordine, e legge ed esegue i comandi dal primo esistente ed è leggibile.

Quindi se lo si ha in .bash_login ma .bash_profile esiste, quindi la tua modifica non verrà vista.

Nota anche il commento relativo al file alternativo di definizione di PATH per le applicazioni della GUI sopra.

Potrebbe essere necessario disconnettersi e quindi tornare indietro per ottenere la modifica a "prendere".

+0

Come aggiungere/usr/bin al percorso? – sol

2

La variabile PATH è avvitata per qualche motivo. Vuoi vedere come è successo esattamente. Questo è tuo (due punti separati per enfasi):

setenv PATH "/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin 
    :/Developer/usr/bin 
    :/System/Library/Frameworks/JavaVM.frameworK/Versions/1.6/Home/" 

questo è ciò che un percorso di lavoro assomiglia:

setenv PATH "/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin 
    :/Developer/usr/bin 
    :/usr/bin 
    :/bin 
    :/usr/sbin 
    :/sbin" 

(separazione della linea è chiarire come le variabili PATH stanno separando percorsi)

Nota come il mio ha/usr/bin:/bin:/usr/sbin:/sbin e il tuo no? Questo è il problema proprio lì. Lo script di shell trova solo gli eseguibili nel suo percorso e mentre i file sono in/usr/bin /, non li trova.

Per una discussione SO su Xcode PATH, vedere ad es. where is $PATH set in xcode?

+0

Grazie per le informazioni. Spero che funzioni. Puoi dirmi come aggiungere quegli oggetti al PERCORSO? – sol

+0

Sono stato in grado di modificare il percorso, ma ancora non funziona. Si prega di vedere la mia "risposta" di seguito - non si adatta nella casella di commento – sol

+0

Ah-hum, strano. Sembra che Xcode non usi effettivamente il PERCORSO che hai impostato, ancora. Se guardi la tua linea, va setenv PATH "/Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin:/Developer/usr/bin:/System/Library/Frameworks/JavaVM.frameworK/Versions/1.6/Home/"ancora (dalla tua risposta in basso). – Kalle

1

Ho avuto lo stesso problema .... il problema è che plutil non è in nessuna delle directory in PATH.

La mia soluzione era di fare una copia da/usr/bin a/user/local/bin che si trova nel PERCORSO.

Nessuna idea se il problema è Xcode, OS X o Apple.

0

Ho esaminato le risposte fornite e nessuna ha funzionato per me. Il problema persisteva.

Ho osservato attentamente l'errore in xcode e ho notato che cercava l'immagine nel posto sbagliato. Nel mio caso ho copiato e rinominato la directory che contiene il mio progetto. Nessuno dei riferimenti alle mie immagini è stato aggiornato.

Ho risolto il problema facendo clic con il pulsante destro del mouse sul file di progetto nel Finder e facendo clic su Mostra contenuto pacchetto. Ho quindi aperto * .pbxproj in xcode. Ho fatto una ricerca e sostituisco il file per sostituire il nome della vecchia cartella con la nuova cartella.

Dopo aver chiuso e aperto xcode questo ha risolto il mio problema.

Spero che questo aiuta gli altri ...

0

questo errore mostrerà anche se avete cancellato un file tramite cercatore (non in Xcode) poi cercare di archivio. Quindi assicurati che nessuno dei tuoi file sia elencato in rosso e se sono rimossi dal tuo progetto.

0

Ho visto questo errore prima. Il problema si trova in un file .png corrotto. L'errore è piuttosto ingannevole. Prova a eliminare il file .png interessato e sostituirlo nel progetto da una versione di backup o pulita di quel file. Questo dovrebbe chiarire gli errori di compilazione.

Problemi correlati