Error:error: linker command failed with exit code 1 (use -v to see invocation)


在使用FFmpeg的过程中,运行时出现在这个错误。Error:error: undefined reference to 'posix_memalign'。 上网百度了好多答案,最终找到的问题的原因。

发现是由于android系统一开始并不支持posix,后来增加了对posix的支持。

这个问题出现的主要原因有两个:

1.编译APP的时候指定的APP_PLATFORM 过低

2.编译APP时使用的NDK版本过低

 

解决方法:

1.检查jni目录下的Application.mk查看APP_PLATFORM

   这个APP_PLATFORM一定要和NDK编译ffmpeg的时候使用的版本要高(或者等于)

 我这里就是从APP_PLATFORM := android-10   修改到 APP_PLATFORM := android-17

2.检查编译ffmpeg的NDK的版本和APP程序中使用的NDK版本是否一致

   我这里是从android-ndk-r9b版本升级到android-ndk-r10e

 


猜你喜欢

转载自blog.csdn.net/lanxingfeifei/article/details/71514807