Сбой проекта сборки с libvpx x86 android с неопределенной ошибкой ссылки

Мне нужно добавить в Android проект поддержки атома процессора. Сконфигурируйте и соберите библиотеку libvpx под x86 с параметрами:

./ configure —disable-examples —sdk-path = ‘/ Android / ndk’ —enable-vp8 —target = x86-android-gcc —disable-postproc

делать

построить успех, и я получаю статическую библиотеку libvpx.a
Добавить библиотеку в проект:

включает $ (CLEAR_VARS)
LOCAL_MODULE: = vpx
LOCAL_SRC_FILES: = третье лицо / webm / libvpx / $ (TARGET_ARCH_ABI) / libvpx.a
включает $ (PREBUILT_STATIC_LIBRARY)

LOCAL_STATIC_LIBRARIES: = stdc ++ jpeg png vorbis vorbisfile vorbisenc theora theoradec libwebp vpx

но при сборке проекта возникали ошибки:

jni / thirdparty / webm / libvpx / x86 / libvpx.a (vp8_dx_iface.co) (. text +0 x568): ошибка: неопределенная ссылка на __vsnprintf_chk
jni / thirdparty / webm / libvpx / x86 / libvpx.a (vp8_dx_iface.co) (. text +0 x596): ошибка: неопределенная ссылка на __longjmp_chk
jni / thirdparty / webm / libvpx / x86 / libvpx.a (onyxd_if.co) (. text +0 x158): ошибка: неопределенная ссылка на ‘__vsnprintf_chk’
jni / thirdparty / webm / libvpx / x86 / libvpx.a (onyxd_if.co) (. text +0 x186): ошибка: неопределенная ссылка на __longjmp_chk
jni / thirdparty / webm / libvpx / x86 / libvpx.a (onyxd_if.co) (. text.unlikely +0 x23): ошибка: неопределенная ссылка на «__assert_fail»
jni / thirdparty / webm / libvpx / x86 / libvpx.a (yv12extend.co): функция vp8_yv12_extend_frame_borders_c: ошибка: неопределенная ссылка на «__assert_fail»
jni / thirdparty / webm / libvpx / x86 / libvpx.a (yv12extend.co): функция vp8_yv12_extend_frame_borders_c: ошибка: неопределенная ссылка на «__assert_fail»
jni / thirdparty / webm / libvpx / x86 / libvpx.a (yv12extend.co): функция vp8_yv12_extend_frame_borders_c: ошибка: неопределенная ссылка на «__assert_fail»
jni / thirdparty / webm / libvpx / x86 / libvpx.a (decodframe.co) (. text +0 x198): ошибка: неопределенная ссылка на ‘__vsnprintf_chk’
jni / thirdparty / webm / libvpx / x86 / libvpx.a (decodframe.co) (. text +0 x1c6): ошибка: неопределенная ссылка на ‘__longjmp_chk’
jni / thirdparty / webm / libvpx / x86 / libvpx.a (boolhuff.co) (. text +0 x55): ошибка: неопределенная ссылка на ‘__longjmp_chk’
jni / thirdparty / webm / libvpx / x86 / libvpx.a (onyx_if.co) (. text +0 xa08): ошибка: неопределенная ссылка на ‘__vsnprintf_chk’

Кто-нибудь знает как это исправить? Построить проект под armeabi успешно.
Попытка добавить флаги APP_CPPFLAGS + = — std = gnu ++ 11 и изменить версию ndk

NDK_TOOLCHAIN_VERSION: = 4,8

другие флаги проекта:

APP_STL: = gnustl_static
APP_CPPFLAGS + = -frtti-fexceptions
APP_CFLAGS + = -Wno-error = формат-безопасность
APP_ABI: = armeabi x86

используется в конструкции ndk android-ndk-r9d-linux-x86 (я пытался использовать android-ndk-r9d-linux-x86_64 — тот же результат), Ubuntu 13.10 x86_64, Eclipse 3.8.1

2

Решение

Для меня добавление --extra-cflags="-U_FORTIFY_SOURCE" покрытый __longjmk_chk а также __vsnprintf_chk

А я написал пустой __assert_fail функция: extern "C" { void __assert_fail() {} }

3

Другие решения