2010-02-16 14 views
0

J'ai essayé de compiler un dylib à utiliser dans une petite expérience de prototypage mais dlopen() dit que mon dylib est Mach-O mais que le fichier est trop court. Devrait-il être rembourré avec quelque chose?dylib pour iPhone 3.1.2 est trop court, mauvais cputype/cpusubtype

J'ai les dernières nouveautés, ça ne devrait pas poser de problème.

lipo crache ceci lorsque je tente de fusionner les i386 et l'ensemble de voûte ARMv6:

lipo: type d'architecture spécifiées (de ARMv6) pour le fichier (libTest.A.armv6.dylib) ne correspond pas à c'est cputype (7) et cpusubtype (3) (qui devrait être cputype (12) et cpusubtype (6))

Any thoughts?

Répondre

0

Voir /usr/include/mach/machine.h, qui (en particulier) contient

#define CPU_TYPE_X86  ((cpu_type_t) 7) 
#define CPU_SUBTYPE_I386_ALL   CPU_SUBTYPE_INTEL(3, 0) 

Cela suggère que libTest.A.armv6.dylib est en fait une bibliothèque i386.

+0

Je suis sur le dernier macbook pro, et arch retourne i386 mais j'obtiens la même erreur que dans la question, quels drapeaux devrais-je utiliser avec ./configure pour le faire fonctionner? devrais-je utiliser --arch = x86_64? –

+0

peut-être que je devrais dire que c'est pour la construction ffmpeg –