2013-01-24 8 views
5

Sto cercando di risolvere un enigmatico enigma che apprezzo molto la spiegazione perché questo mi aiuterà a capire gli strumenti e ad essere fiducioso su quello che faccio.Se VALID_ARCHS è impostato su armv7 armv7a, come si costruisce xcode per il simulatore?

Mi sono imbattuto nel puzzle quando ho avviato la linea di comando xcodebuild per creare la mia app per iPhone. L'ho trovato per rifiutare "-sdk iphonesimulator6.0" con questo messaggio: "Nessuna architettura da compilare per (ARCHS = i386, VALID_ARCHS = armv7). "

Poi ho visto i miei VALID_ARCHS sono stati fissati per ARMv7 e che sembravano spiegare perché xcodebuild rifiutato di costruire per il simulatore (che io stesso portato a credere era Intel). Ma come diavolo fa la mia IDE Xcode andare in giro e riesce a costruire per il simulatore (che lo fa)

Modifica VALID_ARCHS a:? VALID_ARCHS = "$ (ARCHS_STANDARD_32_BIT)"; (che si espande per ARMv7 e armv7a) o VALID_ARCHS = i386 ARMv7 Sembrava di avere soddisfatti xcodebuild abbastanza da accettare di costruire per il simulatore.Avviso, il primo caso non elenca ancora i386! E devo concludere che i386 diventa, in certi casi itions, implicito. Qualcuno può confermare e/o espandersi su questo?

risposta

1

Quando Xcode generazione su i386 cambia queste variabili, si può assistere questo in Xcode Log navigatore ...

Queste sono le variabili Xcode manipolare in modo da consentire in esecuzione su i386

VALID_ARCHS = i386 ARCHS = i386

Si può fare lo stesso invocando il comando xcodebuild nel seguente modo:

xcrun xcodebuild VALID_ARCHS=i386 ARCHS=i386 ONLY_ACTIVE_ARCH=NO -arch i386 -sdk iphonesimulator7.1 -configuration Debug 
Problemi correlati