我試圖編譯最後的FFmpeg的iPhone無效的操作數,但我得到一個錯誤:試圖編譯最後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
感謝
我試圖編譯最後的FFmpeg的iPhone無效的操作數,但我得到一個錯誤:試圖編譯最後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
感謝
我試過--disable-asm配置。它可以工作,但解碼器的性能很差。
我試圖編輯在config.h:
#define HAVE_INLINE_ASM 0
這隻禁用內聯彙編
,或者如果你只是在一些的ffmpeg解碼器,只需關閉所有其它未使用的編解碼器 和編輯libavutil /arm/intmath.h,註釋掉這個定義:
#define av_clipl_int32 av_clipl_int32_arm
這隻會禁用一個內聯彙編函數,它適用於我。
我越來越一樣的問題。我發現了一個辦法解決它通過禁用內聯彙編語言:
./configure --disable-asm ...
我不知道這會對性能什麼樣的影響,但至少現在它的工作原理。
你可以使用--disable-armv5te --disable-armv6 --disable-armv6t2這將爲你工作。這些CPU是非常古老的CPU,我們可以禁用它。
當你使用這些--disable-armv5te -disable-armv6 -disable-armv6t2時解碼器也有很高的性能。 – jeff
不幸的是,這在ffmpeg 0.10,OS X Lion和Xcode 4.2上不適用於我。它只是創建了其他ASM錯誤。 --disable-asm是唯一有效的工具。 –