2014-06-17 16 views
5

Ho un'app OSX e ho aggiunto il sdk ParseOSX. Ho seguito tutte le istruzioni sulla pagina di avvio rapido (https://www.parse.com/apps/quickstart#parse_data/desktop/osx/existing)App OSX in crash durante il caricamento del framework ParseOSX con Dyld Error

L'app sta funzionando correttamente in Xcode (Versione 5.1.1 (5B1008)) ma quando archivo e creo un pacchetto e lo installo. Ottengo il seguente errore Dyld;

messaggio di errore dyld: libreria non caricato: @executable_path /../ Frameworks/ParseOSX.framework/ParseOSX di riferimento da: /Applications/MyApp.app/Contents/MacOS/MyApp Motivo: Image not found

Continua e elenca le immagini binarie caricate.

Ricerca nel Web Ho trovato il riferimento all'aggiunta di una fase di copia dei file di copia e l'aggiunta del framework di analisi a quello con la destinazione impostata nella directory Prodotti.

Quindi sembra che una lib dinamica non sia installata da qualche parte.

UPDATE:

Ho appena pulito la cartella di compilazione e ora l'applicazione non viene eseguito neppure in Xcode. Ottengo:

dyld: Biblioteca non caricato: @executable_path /../ Frameworks/ParseOSX.framework/ParseOSX di riferimento da:/Users/Formiche/Library/Developer/Xcode/DerivedData/MyApp-hjrbgyhzpwnxhiaskxpojqyqxnvh/build /Products/Debug/Actual.app/Contents/MacOS/MyApp Motivo: immagine non trovata

UPDATE 2:

si scopre quando si è nella pagina di avvio rapido. Se hai scelto la nuova opzione di app, ottieni un progetto Xcode. Questo compila. Passando attraverso di esso posso vedere che c'è una fase di copia dei file che copia lo ParseOSX.framework nella destinazione Frameworks. Provato questo è il mio app e io ora ottenere un errore di firma

/Users/Ants/Library/Developer/Xcode/DerivedData/MyApp-hjrbgyhzpwnxhiaskxpojqyqxnvh/Build/Products/Debug/MyApp.app: code object is not signed at all In subcomponent: /Users/Ants/Library/Developer/Xcode/DerivedData/MyApp-hjrbgyhzpwnxhiaskxpojqyqxnvh/Build/Products/Debug/MyApp.app/Contents/Frameworks/ParseOSX.framework

+0

Nel passaggio 2, quando si trascina il framework Parse in, è stata selezionata la casella di controllo per copiare il file? – Fosco

+0

hey @Fosco, grazie per l'idea, l'ho appena aggiunto e il framework è nella directory app accanto al file xcodeprojt quindi sì sembra copiato. – Ants

+0

Ho appena creato un'applicazione di test con solo la riga '[ Parse setApplicationId: @ "rterter" \t clientKey: @ "ertert"]; 'nel Delegato. Ottieni esattamente lo stesso errore. https://www.dropbox.com/s/h2xea315dldwqjc/ParseTestApp.zip – Ants

risposta

7

due cose risolto questo per me.

Prima ho dovuto aggiungere una sezione di copia dei file alle fasi di compilazione e copiare ParseOSX.framework nella destinazione Frameworks.

E in secondo luogo, avevo bisogno di aggiungere --deep a "Altri flag di firma del codice" nella sezione Firma codice di Impostazioni di creazione. Ora firma le strutture che vengono copiate sembra.

+1

Si noti che l'opzione di firma del codice deep deve avere due trattini, quindi aggiungere '--deep'. –

+0

@bojand grazie per questo, in realtà avevo aggiunto '--deep'. – Ants

16

Ho avuto lo stesso problema con xcode 6.1. Risolto il problema aggiungendo ParseOSX.framework a "Binari incorporati" nella scheda generale della pagina Targets.

+2

Avevo bisogno di aggiungere ** entrambi ** ParseOX.framework e Bolts.framework come binari incorporati. Solo allora funzionerebbe senza errori. NOTA: ho diffdato il progetto Parse Xcode e il mio progetto Parse e i binari incorporati sembravano essere l'unica differenza che potevo vedere di qualsiasi importanza. (Disclaimer: non ho esaminato ogni differenza in profondità e non sono un'esportazione sui file di progetto Xcode, quindi YMMV). Ma i binari incorporati sembrano funzionare. – Joel

+0

Risolto anche per me, qualcosa si è rotto dopo l'aggiornamento da parse 1.7.5 a 1.9. Come sempre, non c'è nessun aggiornamento di questa libreria che vada liscio –

1

Stavo aggiornando un progetto di analisi esistente al nuovo SDK (1.12.0) utilizzando Xcode 7.2 e ho riscontrato lo stesso problema.

La soluzione per me era impostare Runpath Search Paths su @executable_path/../Frameworks.

enter image description here

ho trovato questo confrontando il progetto Starter da Analizza per il mio progetto.

+0

Questo problema è stato risolto per me su Xcode 7.3.1 e Parse 1.12.0. Grazie per il consiglio. – Baza207