使用libvpx x86 android构建项目失败,出现未定义的引用错误
Build project with libvpx x86 android fail with undefined reference error
我需要添加对android项目原子处理器的支持。在x86下配置和构建libvpx库,参数为:
/configure--disable examples--sdk path='/Android/ndk'--enable-vp8--target=x86 Android gcc--disable postdoc
制作
构建成功后,我得到了一个静态库libvpx.a将库添加到项目:
包括$(CLEAR_VARS)
LOCAL_MODULE:=vpx
LOCAL_SRC_FILES:=thirdparty/webm/libvpx/$(TARGET_ARCH_ABI)/libvpx.a
包括$(预建_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+0x568):错误:未定义对'__vsnprintf_chk'的引用
jni/thirdparty/webm/libvpx/x86/libvpx.a(vp8_dx_iface.co)(.text+0x596):错误:未定义对'__longjmp_chk'的引用
jni/thirdparty/webm/libvpx/x86/libvpx.a(onyxd_if.co)(.text+0x158):错误:未定义对'__vsnprintf_chk'的引用
jni/thirdparty/webm/libvpx/x86/libvpx.a(onyxd_if.co)(.text+0x186):错误:未定义对'__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(yv12.extend.co):函数vp8_yv12_extend_frame_borders_c:错误:未定义对'__assert_fail'的引用
jni/thirdparty/webm/libvpx/x86/libvpx.a(yv12.extend.co):函数vp8_yv12_extend_frame_borders_c:错误:未定义对'__assert_fail'的引用
jni/thirdparty/webm/libvpx/x86/libvpx.a(yv12.extend.co):函数vp8_yv12_extend_frame_borders_c:错误:未定义对'__assert_fail'的引用
jni/thirdparty/webm/libvpx/x86/libvpx.a(decodframe.co)(.text+0x198):错误:未定义对'__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+0x55):错误:未定义对'__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异常
APP_CFLAGS+=-Wno错误=格式安全
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
对于我来说,添加--extra-cflags="-U_FORTIFY_SOURCE"
覆盖的__longjmk_chk
和__vsnprintf_chk
我写了空的__assert_fail
函数:extern "C" { void __assert_fail() {} }
- 如何修复此错误:未定义对"距离(浮点数,浮点数,浮点数,浮点数,浮点数)"的引用
- 我的项目不会像"undefined reference to `grpc::g_core_codegen_interface'"那样使用未定义的引用错误进行编译
- 对C宏的未定义引用,但在定义它时会出现重新定义错误
- 尝试调用 .h 文件中定义的变量时出现变量未定义错误
- 在C++中使用内联方法时出现未定义的符号错误
- 尝试运行 wasm 函数时出现模块未定义错误
- c++中数组的未定义错误
- 基类未定义.错误 C2504
- 获取线函数未定义错误。无法在字符串中保存可验证的内容
- 对于我的 ComplexNumber 中的某些方法,我得到了一个奇怪的未定义错误引用.cpp,不过我对模板很陌生
- 类类型重定义和基类未定义错误
- C 中的基类未定义错误
- QML[未定义]错误
- 如何构建使用 OpenCV 的 XCode 6 iOS 应用程序 - 未定义错误__cplusplus
- 变量未定义错误
- 静态方法声明但未定义错误c++
- c++ cocos-2d-x未定义错误
- 基类未定义错误(C2504)
- 单例作为模板,未定义错误
- Solaris库与STLport4.6.2链接,出现与ostream相关的未定义错误