Cercando di compilare x264 e ffmpeg per iPhone - “manca un braccio architettura richiesta nel file”

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

  •  25-09-2019
  •  | 
  •  

Domanda

Sto cercando di compilare x264 per l'uso in un'applicazione iPhone. Vedo che ci sono le istruzioni su come compilare ffmpeg per l'uso sulla piattaforma qui: http://lists.mplayerhq.hu/pipermail/ffmpeg-devel/2009-October/076618.html , ma non posso sembrare trovare qualche cosa questo completo per la compilazione x264 su iPhone. Ho trovato questo albero fonte: http://gitorious.org/x264-arm che sembra avere il supporto per la piattaforma ARM.

Questa è la mia linea di configurazione:

./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/"

... e dentro configure sto usando lo script di gas-preprocessore (primo link qui sotto) come il mio assembler:

gas-preprocessor.pl gcc

Quando inizio compilazione, si pezzetti via per un po ', poi sputa fuori questi avvertimenti e un enorme elenco di simboli non definiti:

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:

La mia ipotesi è che il problema ha a che fare con il "braccio mancante necessaria architettura nel file" avvertimento ... tutte le idee?

È stato utile?

Soluzione

Controlla questo sito: http://github.com/gabriel/ffmpeg-iphone-build File: build-x264-ARMv6

L'amerete!

Ciao e buona fortuna!

Altri suggerimenti

Molti degli sviluppatori che si verifichino problemi di compilazione fonti FFMpeg dopo il passaggio alla XCode 4.3. Ciò è dovuto principalmente al fatto che, a differenza nelle versioni precedenti, XCode4.3 si presenta come un fascio, e non include gli strumenti da riga di comando inizialmente.

Abbiamo cercato di costruire lo script universale; è possibile scaricare l'ambiente completo per la creazione di FFMpeg con XCode4.3 qui: https://github.com/melnikov /ffmpeg4iphone_4.3

Prerequisiti:

  1. è necessario disporre di XCode4.2 o 4.3 installato sul vostro Mac
  2. è necessario disporre di strumenti da riga di comando XCode installati (può essere installato tramite XCode -> Preferenze -> Download)
  3. è necessario disporre di git per installare Mac.

istruzioni e spiegazioni:

  1. posto script di build in qualche directory (ad esempio, / tmp / ffbuild), impostare il flag eseguibile su di esso (eseguendo 'chmod + x ./build)
  2. eseguire lo script. Quello che farà:
  3. sarà cassa ultima versione di FFMpeg nella directory FFmpeg (è possibile commentare tranquillamente questo fuori se si è già verificato FFmpeg nella directory corrente)
  4. cercherà di rilevare la posizione del vostro Xcode.app ed uscirà se non è installato Xcode
  5. cercherà di individuare gcc all'interno del Xcode.app e uscirà se non è trovato (puo 'accadere se non sono installati Xcode Tools Command)
  6. se i passaggi precedenti andato bene, lo script sarà
  7. creare build_results cartella
  8. verrà successivamente eseguito FFmpeg configurare e fare per 3 diverse architetture (ARMv6, ARMv7, i386) e li metterà in rispettive directory all'interno della cartella build_results
  9. verrà eseguito lipo e creare librerie universali (e li metterà dentro build_results / Universal) la cartella.

A proposito, ho testato lo script su un certo numero di Mac del mio collega, e alcuni di loro tendono a non prodotto risultati in mdfind per Xcode.app. Quindi, se lo script restituirà 'Xcode non è installato', non esitate a variabile XCODEPATH insieme al percorso di Xcode.app

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top