最新版本的FFmpeg
是3.1.1
。 3.1
版本後,我不能編譯FFmpeg
的x86
。(但3.0.2
或更早的版本可以被編譯。)使用Android編譯FFmpeg 3.1.1 for x86 NDK
終端顯示ld: error: libavutil/../compat/strtod.o: incompatible target
。
我的操作系統是Xubuntu 14.04 x86
和x86_64
。(我已經試過他們兩個。)
我NDK
版本是r10e(x86)
和r12b(x86_64)
。
當我編譯FFmpeg 3.0.2
時,它沒有錯誤。
這是我的配置:
./configure \
--prefix="${PREFIX}" \
--enable-shared \
--disable-static \
--disable-doc \
--disable-ffplay \
--disable-ffprobe \
--disable-ffserver \
--cross-prefix="${PREFIX}/bin/i686-linux-android-" \
--target-os=linux \
--arch=x86 \
--enable-cross-compile \
--sysroot="${PREFIX}/sysroot" \
--extra-cflags="" \
--extra-ldflags="" \
--extra-libs="" \
--disable-debug
${PREFIX}
是用於在運行make-standalone-toolchain.sh
--install-dir
選項,這是Android的NDK工具的目錄路徑。
它只發生在編譯FFmpeg
爲x86
。 ARM
建築是好的。
你解決了我的問題。謝謝〜 – user3032481
@Dave你救了我的命,大概6個小時吧。 –
我在我的腳本「rm compat/strtod.o rm compat/strtod.d」中這樣做了,現在我不必擔心這個問題,很煩人,說實話不容易搞清楚,謝謝 – Diljeet