Essayer de compiler x264 et ffmpeg pour iPhone - « manquant bras architecture requise dans le fichier »

StackOverflow https://stackoverflow.com/questions/2611222

  •  25-09-2019
  •  | 
  •  

Question

Je suis en train de compiler x264 pour être utilisé dans une application iPhone. Je vois qu'il ya des instructions sur la façon de compiler ffmpeg pour une utilisation sur la plate-forme ici: http://lists.mplayerhq.hu/pipermail/ffmpeg-devel/2009-October/076618.html , mais je ne peux pas sembler trouver quoi que ce soit ce complet pour la compilation x264 sur l'iPhone. J'ai trouvé cet arbre source: http://gitorious.org/x264-arm qui semble un support pour la plate-forme ARM.

Voici ma ligne de config:

./configure --cross-prefix=/usr/bin/ --host=arm-apple-darwin10 --extra-cflags="-B /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS3.2.sdk/usr/lib/ -I /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS3.2.sdk/usr/lib/"

... et à l'intérieur configure J'utilise le script gaz préprocesseur (premier lien ci-dessus) comme mon assembleur:

gas-preprocessor.pl gcc

Quand je commence la compilation, il morceaux loin pour un peu de temps, il crache ces avertissements et une liste énorme de symboles non définis:

ld: warning: option -s is obsolete and being ignored
ld: warning: -force_cpusubtype_ALL will become unsupported for ARM architectures
ld: warning: in /usr/lib/crt1.o, missing required architecture arm in file
ld: warning: in /usr/X11R6/lib/libX11.dylib, missing required architecture arm in file
ld: warning: in /usr/lib/libm.dylib, missing required architecture arm in file
ld: warning: in /usr/lib/libpthread.dylib, missing required architecture arm in file
ld: warning: in /usr/lib/libgcc_s.1.dylib, missing required architecture arm in file
ld: warning: in /usr/lib/libSystem.dylib, missing required architecture arm in file
Undefined symbols:

Je dirais que le problème a à voir avec l'avertissement « manquant bras architecture requise dans le fichier » ... des idées?

Était-ce utile?

La solution

Vérifier ce site: http://github.com/gabriel/ffmpeg-iphone-build Fichier: build-x264-ARMv6

Vous allez adorer!

Au revoir et bonne chance!

Autres conseils

La plupart des développeurs rencontrer des problèmes compilant les sources FFMpeg après la transition vers XCode 4.3. Cela est principalement dû au fait que, contrairement aux versions précédentes, XCode4.3 vient comme un paquet, et ne comprend pas les outils de ligne de commande initialement.

Nous avons essayé de construire le script universel; vous pouvez télécharger l'environnement complet pour la construction de FFMPEG avec XCode4.3 ici: https://github.com/melnikov /ffmpeg4iphone_4.3

Préalables:

  1. vous devez avoir XCode4.2 ou 4.3 installé sur votre Mac
  2. vous devez disposer d'outils de ligne de commande XCode installés (peut être installé via XCode -> Préférences -> Téléchargements)
  3. vous devez avoir git pour Mac installé.

INSTRUCTIONS et EXPLICATION:

  1. lieu script de compilation dans un répertoire (par exemple, / tmp / ffbuild), définir l'indicateur exécutable sur elle (en exécutant « chmod + x ./build)
  2. exécuter le script. Qu'est-ce qu'il va faire:
  3. il la caisse dernière version de FFMPEG dans le répertoire FFmpeg (vous pouvez sans risque commenter cette si vous avez déjà vérifié FFmpeg dans le répertoire courant)
  4. il va essayer de détecter l'emplacement de votre Xcode.app et quittera si Xcode est pas installé
  5. il va essayer de localiser gcc à l'intérieur de la Xcode.app et quitte si elle ne le trouve pas (cela peut se produire si les outils de Xcode commande ne sont pas installés)
  6. si les étapes ci-dessus se sont bien déroulées, script
  7. créer dossier build_results
  8. sera ensuite exécutez le script configure FFmpeg et faire pour 3 architectures différentes (ARMv6, ARMv7, i386) et les mettre dans des répertoires respectifs à l'intérieur du dossier build_results
  9. se déroulera lipo et créer libs universelles (et les mettre à l'intérieur build_results / Universal) dossier.

BTW, je l'ai testé le script sur un certain nombre de macs de mon collègue, et certains d'entre eux ont tendance à ne pas retourner aucun résultat en mdfind pour Xcode.app. Donc, si le script retourne « Xcode n'est pas installé », s'il vous plaît ne hésitez pas à définir la variable XCODEPATH sur le chemin à Xcode.app

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top