Я пытаюсь скомпилировать библиотеки FFMPEG для платформы IOS с архитектурой arm7. Я загрузил библиотеки FFMPEG с http://www.ffmpeg.org.Попытка скомпилировать библиотеки FFMPEG для платформы iPhoneOS с архитектурой armv6 и arv7
Я успешно смогу создавать статические библиотеки для архитектуры i386 для iPhoneSimulator. Но мне нужны библиотеки для iPhoneOS. Используя команду configure, я получаю сообщение об ошибке. Ниже приведены данные моей команды.
Для i386 (это ошибка бесплатно):
./configure --enable-cross-compile --disable-debug --disable-ffmpeg --disable-ffplay --disable-ffprobe --disable-ffserver --disable-doc --disable-network --disable-everything --enable-protocol=file --enable-demuxer=mov --enable-muxer=mpegts --enable-bsf=h264_mp4toannexb --arch=i386 --target-os=darwin --cc=/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin/gcc --as='./gas-preprocessor/gas-preprocessor.pl /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/gcc' --sysroot=/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneOS6.1.sdk --cpu=i386 --extra-cflags='-arch i386' --extra-ldflags='-arch i386 -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator6.1.sdk' --prefix="/Users/amit/Desktop/LivuLib-master/LivuLIb/ffmpeg/bin/newLib"
Для ARMv7:
./configure --enable-cross-compile --disable-debug --disable-ffmpeg --disable-ffplay --disable-ffprobe --disable-ffserver --disable-doc --disable-network --disable-everything --enable-protocol=file --enable-demuxer=mov --enable-muxer=mpegts --enable-bsf=h264_mp4toannexb --arch=armv7 --target-os=darwin --cc=/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/gcc --as='./gas-preprocessor/gas-preprocessor.pl /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/gcc' --sysroot=/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS6.1.sdk --cpu=cortex-a9 --extra-cflags='-arch armv7' --extra-ldflags='-arch armv7 -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS6.1.sdk' --prefix="/Users/amit/Desktop/LivuLib-master/LivuLIb/ffmpeg/bin/newLib"
Для выше команды для ARM7 Я получаю эту ошибку:
/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/gcc is unable to create an executable file.
C compiler test failed.
If you think configure made a mistake, make sure you are using the latest
version from SVN.
Так пожалуйста, предложите мне возможное решение. Почему это не работает? Или мне нужно что-то обновить. Благодарю.
Посмотрите эту страницу, чтобы узнать о несовместимости LGPL и iOS, вам нужно подумать об этом, прежде чем пытаться использовать ffmpeg в приложении iOS: [Совместимость-между-iphone-app-store-and-the-lgpl] (http://multinc.com/2009/08/24/compatibility-between-the-iphone-app-store-and-the-lgpl/). – MoDJ
Вот скрипт для создания FFmpeg для iOS 6.1+ на основе iOS 7.0 SDK (Xcode 5): https://github.com/renebigot/build_FFmpeg_for_iOS. Он будет создавать универсальные (armv7, armv7s и i386) статические библиотеки. – Massale
Для тех, кто ищет ответы на кросс-компиляцию библиотеки ffmpeg для платформы iOS с помощью Xcode 5, изучите сценарий сборки с http://www.ffmpeg4ios.org/ и измените SDK для последней версии. аналогичный вопрос http://stackoverflow.com/questions/19092796/build-ffmpeg-with-xcode-5 –