使用android ndk编译ffmpeg时如何保持兼容性
我已经成功地将ffmpeg编译为我的项目的静态库,android平台19在Application.xml中指定如下:使用android ndk编译ffmpeg时如何保持兼容性,android,ffmpeg,android-ndk,libm,Android,Ffmpeg,Android Ndk,Libm,我已经成功地将ffmpeg编译为我的项目的静态库,android平台19在Application.xml中指定如下: APP_PLATFORM := android-19 我在一台设备(4.4)上测试我的项目,它运行良好。但它将在4.0设备上崩溃 因此,我想将APP_平台更改为较低版本,如: APP_PLATFORM := android-17 但是ide出现了这样的错误 libavcodec/ffv1enc.c:631: error: undefined reference to 'log
APP_PLATFORM := android-19
我在一台设备(4.4)上测试我的项目,它运行良好。但它将在4.0设备上崩溃
因此,我想将APP_平台更改为较低版本,如:
APP_PLATFORM := android-17
但是ide出现了这样的错误
libavcodec/ffv1enc.c:631: error: undefined reference to 'log2'
当我把它改成更低的版本时:
APP_PLATFORM := android-8
发生了更多错误:
libavcodec/ffv1enc.c:631: error: undefined reference to 'log2'
libavutil/mem.c:94: error: undefined reference to 'posix_memalign'
我知道log2引用没有定义,因为缺少libm,但据我所知,Android在构建时会自动链接到libm
因此,我如何在编译ffmpeg时保持兼容性,以便在较低版本的设备上很好地运行我的项目。我通过使用较低版本的ndk平台工具重新编译ffmpeg解决了这个问题 然后在Android.mk中保留相同的版本 这些错误不再发生了