Marco no encontrado MapKit

votos
1

Estoy usando Xcode 3.2.1 en el proyecto, en donde la base es SDK iPhone de dispositivos 3.0 y iPhone OS Destino de despliegue es el iPhone OS 2.0 , en otras palabras, una aplicación compatible con versiones anteriores.

El problema es MapKit marco . Se añade como biblioteca vinculada débil , pero la aplicación simplemente no se vincula a Device - 2.2.1 objetivo. Me he quedado sin ideas ... ¿Qué más puedo hacer sino marcar la biblioteca como débil vinculado? Solía trabajar en un principio, pero no más.

Aquí está parte de la línea de comandos, que se ve muy bien para mí:

-framework Foundation -framework UIKit -framework CoreGraphics
 -weak_framework CoreLocation -weak_framework MapKit

nota de error:

ld: framework not found MapKit
collect2: ld returned 1 exit status
Command /Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/g++-4.0 failed with exit code 1
Publicado el 16/12/2009 a las 12:50
fuente por usuario
En otros idiomas...                            


3 respuestas

votos
1

Solo para aclarar el problema y la solución:

Problema: quería crear una aplicación compatible hacia atrás , lo que iría en ambos dispositivos 2.xy 3.x iPhone OS. Sería usar las características específicas 3.x cuando esté disponible, por ejemplo MapKit.

Solución: configurar su "Base SDK iPhone como dispositivo de 3.0" y "iPhone OS despliegue destino como iPhone OS 2.0" . Conectar el dispositivo iPhone OS 2.x (el mío era el iPod Touch, donde se niegan a actualizar a la última versión del software del iPod disponible) y seleccione en la esquina superior izquierda del destino como "dispositivo - 3.0" - incluso cuando el dispositivo conectado no es compatible con 3.0 en absoluto !!!

Bastante confuso, parece totalmente no lógico al principio, pero esa es la forma en que funciona!

Respondida el 17/12/2009 a las 08:23
fuente por usuario

votos
1

Prueba el MailComposer proyecto de ejemplo de Apple, que hace una cosa similar con el marco MessageUI. Lo que puede que tenga que hacer es configurar el SDK Base a 2.2.1 en lugar de 2,0.

Respondida el 17/12/2009 a las 06:20
fuente por usuario

votos
1

Para ejecutar la aplicación en 2.2.1, no es necesario elegir 2.2.1 en ese menú, deje el "Activo SDK" ajustado a 3.0 o más allá.

Respondida el 16/12/2009 a las 18:47
fuente por usuario

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more