不知哪位大侠有没有编译过ios的ffmpeg1.1版本,现在情况是这样
配置文件:./configure --disable-doc --disable-ffmpeg --disable-ffplay --disable-ffserver --enable-cross-compile --arch=arm --target-os=darwin --cc=/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/gcc --as='gas-preprocessor.pl /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/gcc' --sysroot=/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS6.0.sdk --cpu=cortex-a8 --extra-cflags='-arch armv7' --extra-ldflags='-arch armv7 -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS6.0.sdk' --enable-pic
运行后打印如下:Enabled indevs:
lavfiEnabled outdevs:License: LGPL version 2.1 or later
Creating config.mak and config.h...WARNING: pkg-config not found, library detection may fail.
WARNING: Compiler does not indicate floating-point ABI, guessing soft.
这个打印应该可以确定配置是没有问题的 ,编译后出现如下错误:ld: warning: ARM function not 4-byte aligned: empty_row from libavcodec/libavcodec.a(jrevdct_arm.o)
ld: warning: ARM function not 4-byte aligned: end_of_row_loop from libavcodec/libavcodec.a(jrevdct_arm.o)
ld: warning: ARM function not 4-byte aligned: start_column_loop from libavcodec/libavcodec.a(jrevdct_arm.o)
ld: warning: ARM function not 4-byte aligned: column_loop from libavcodec/libavcodec.a(jrevdct_arm.o)
ld: warning: ARM function not 4-byte aligned: empty_odd_column from libavcodec/libavcodec.a(jrevdct_arm.o)
ld: warning: ARM function not 4-byte aligned: the_end from libavcodec/libavcodec.a(jrevdct_arm.o)
ld: warning: ARM function not 4-byte aligned: __b_evaluation from libavcodec/libavcodec.a(simple_idct_arm.o)
ld: warning: ARM function not 4-byte aligned: __end_b_evaluation from libavcodec/libavcodec.a(simple_idct_arm.o)
ld: warning: ARM function not 4-byte aligned: __a_evaluation from libavcodec/libavcodec.a(simple_idct_arm.o)
ld: warning: ARM function not 4-byte aligned: __almost_empty_row from libavcodec/libavcodec.a(simple_idct_arm.o)
ld: warning: ARM function not 4-byte aligned: __end_row_loop from libavcodec/libavcodec.a(simple_idct_arm.o)
ld: warning: ARM function not 4-byte aligned: __end_b_evaluation2 from libavcodec/libavcodec.a(simple_idct_arm.o)
ld: warning: ARM function not 4-byte aligned: __a_evaluation2 from libavcodec/libavcodec.a(simple_idct_arm.o)
ld: warning: ARM function not 4-byte aligned: __end_simple_idct_arm from libavcodec/libavcodec.a(simple_idct_arm.o)
ld: in libavcodec/libavcodec.a(h264dsp_neon.o), in section __TEXT,__text reloc 12: R_ABS reloc but no absolute symbol at target address for architecture armv7
collect2: ld returned 1 exit statusmake: *** [ffprobe_g] Error 1
请问有没有哪位大虾遇到过?

解决方案 »

  1.   

    configure参数里加一句这个试试看
    --extra-cflags='-mfpu=neon'1.1的我能编译通过,但是在真机上运行的时候avi的文件只要是mp3的音频流就会出现极大的杂音,但是模拟器上完全没问题,不知道什么原因
      

  2.   

    是这个原因 error:ld: in /Projects/TestFFMpeg01/libavcodec.a(mpegvideo_neon.o), in section __TEXT,__text reloc 0: R_ABS reloc but no absolute symbol at target address for architecture armv7
    clang: error: linker command failed with exit code 1 (use -v to see invocation)solve:switch to a newer version of the gas-preprocessor.pl file that can be found here:https://github.com/mansr/gas-preprocessor
    //
    http://guangzhi.blog.163.com/blog/static/2014530132013017113426313/?newFollowBlog