#iphone #compilation #ffmpeg
#iPhone #Сборник #ffmpeg
Вопрос:
Я пытаюсь скомпилировать последний FFmpeg для iPhone, но получаю сообщение об ошибке:
CC libavformat/asfcrypt.o
error: invalid operand in inline asm: 'ldr ${0:Q}, $1
ldr ${0:R}, $2
'
make: *** [libavformat/asfcrypt.o] Error 1
Спасибо
Ответ №1:
У меня такая же проблема. Я нашел способ обойти это, отключив встроенный язык ассемблера:
./configure --disable-asm ...
Я не уверен, какое влияние это окажет на производительность, но, по крайней мере, пока это работает.
Ответ №2:
Я попробовал —disable-asm configuration . Это работает, но производительность декодера низкая.
Я попытался отредактировать config.h:
#define HAVE_INLINE_ASM 0
это отключает только встроенную сборку
или, если у вас есть только какой-то декодер в ffmpeg, просто отключите все остальные неиспользуемые кодеки и отредактируйте libavutil / arm / intmath.h, закомментируйте это определение:
#define av_clipl_int32 av_clipl_int32_arm
это отключает только одну встроенную функцию сборки, и она работает для меня.
Комментарии:
1. К сожалению, это не сработало для меня в ffmpeg 0.10, OS X Lion и Xcode 4.2. Это просто создало другие ошибки ASM. —disable-asm — единственное, что сработало.
Ответ №3:
вы можете использовать —disable-armv5te —disable-armv6 —disable-armv6t2, это сработает для вас. этот процессор очень старый, мы можем его отключить.
Комментарии:
1. при использовании этих —disable-armv5te —disable-armv6 —disable-armv6t2 декодер также обладает высокой производительностью.