J'ai déjà passé d'innombrables heures à réfléchir à ce sujet, en utilisant les recherches Google et d'autres questions Stack Overflow en vain.Erreur de liaison XCode lors du ciblage armv7
J'ai une application universelle iPhone/iPad, qui semble bien se compiler lorsque la cible est armv6. Cependant, lorsque l'appareil est iPad, je reçois cet avertissement:
warning: building for SDK 'Device - iPhone OS 3.2' requires an armv7 architecture.
Étrangement, l'application fonctionne toujours aussi bien sur iPad malgré cet avertissement. Cependant, je veux faire les choses de la «bonne manière», ce que cela signifie dans ce cas. Lorsque je passe l'architecture cible à ARMv7, je me relier des erreurs:
"___restore_vfp_d8_d15_regs", referenced from: *redacted* "___save_vfp_d8_d15_regs", referenced from: *redacted* ld: symbol(s) not found collect2: ld returned 1 exit status
Les parties « caviardées » des erreurs sont des références à la bibliothèque statique à laquelle je suis en train de créer un lien.
Voici ce que j'ai essayé parmi les nombreuses suggestions en ligne. Chacun d'entre eux ont été proposés plus d'une fois, sans aucune explication, ce qui me porte à croire que personne ne comprend tout à fait ce problème.
« Ne jamais utiliser le menu déroulant en haut à gauche de la fenêtre de XCode pour choisir la cible au lieu , réglez ce SDK de base et le kit de développement de base à l'iPhone OS 3.0 dans la configuration cible. définir le périphérique cible à votre cible préférée (iPad, iPhone OS 3.2 dans ma situation.) »
cela donne l'erreur "Bibliothèque introuvable pour -lcrt1.3.1.o"
"Assurez-vous que GCC ne crée pas de liens avec la mauvaise version de la bibliothèque standard. (Vous devrez vous assurer que le LIBRARY_SEARCH_PATH ne pas le mauvais chemin en elle.) «
Mon LIBRARY_SEARCH_PATH est déjà vide, donc cela ne semble pas pertinent.
» Essayez la compilation avec GCC 4.0 plutôt que GCC 4.2 «
Je reçois une erreur de syntaxe dans un fichier d'en-tête UIKit L'erreur est. « erreur de syntaxe avant jeton « AT_NAME » » La ligne est » UIKIT_EXTERN @interface UILocalizedIndexedCollation:.. NSObject "
Un autre projet compile très bien avec les mêmes paramètres cibles , ce qui me fait vraiment douter de ma santé mentale. Pourrais-je avoir affaire à un projet XCode corrompu?
Si quelqu'un sait ce qui se passe réellement et a une référence ou n'aime pas l'expliquer, je serais très reconnaissant.
À la votre! VFP entre ARMv7 et ARMv6 diffère de différentes manières.
Quelles architectures sont combinées dans la bibliothèque? Vous pouvez le trouver avec la commande de fichier, par ex. "fichier libfoo.a". – Crufty