gpt4 book ai didi

android - 我们的Android静态库格式错误

转载 作者:行者123 更新时间:2023-12-04 17:45:00 26 4
gpt4 key购买 nike

我们在 armeabi-v7a 上使用 hugin 应用程序创建了静态库,并尝试使用 Cmakelist 将它与我们在 Android 中的共享库连接起来。我们可以毫无问题地看到库和他的 header ,但是当我尝试编译它时,它失败并出现以下错误:

Build command failed.

Error while executing process

....\cmake\3.6.3155560\bin\cmake.exe with arguments {--build ....\OpenCVExample-master\app.externalNativeBuild\cmake\debug\arm64-v8a --target native-lib}
[1/2] Building CXX object CMakeFiles/native-lib.dir/src/main/cpp/native-lib.cpp.o

[2/2] Linking CXX shared library ........\build\intermediates\cmake\debug\obj\arm64-v8a\libnative-lib.so FAILED: cmd.exe /C "cd . && ....\ndk-bundle\toolchains\llvm\prebuilt\windows-x86_64\bin\clang++.exe --target=aarch64-none-linux-android --gcc-toolchain=../../ndk-bundle/toolchains/aarch64-linux-android-4.9/prebuilt/windows-x86_64 --sysroot=../../ndk-bundle/platforms/android-21/arch-arm64 -fPIC -g -DANDROID -ffunction-sections -funwind-tables -fstack-protector-strong -no-canonical-prefixes -Wa,--noexecstack -Wformat -Werror=format-security -g -DANDROID -ffunction-sections -funwind-tables -fstack-protector-strong -no-canonical-prefixes -Wa,--noexecstack -Wformat -Werror=format-security -std=c++11 -frtti -fexceptions -std=gnu++11 -O0 -fno-limit-debug-info -O0 -fno-limit-debug-info -Wl,--build-id -Wl,--warn-shared-textrel -Wl,--fatal-warnings -Wl,--no-undefined -Wl,-z,noexecstack -Qunused-arguments -Wl,-z,relro -Wl,-z,now -Wl,--build-id -Wl,--warn-shared-textrel -Wl,--fatal-warnings -Wl,--no-undefined -Wl,-z,noexecstack -Qunused-arguments -Wl,-z,relro -Wl,-z,now -shared -Wl,-soname,libnative-lib.so -o ........\build\intermediates\cmake\debug\obj\arm64-v8a\libnative-lib.so CMakeFiles/native-lib.dir/src/main/cpp/native-lib.cpp.o ../../../../src/main/jniLibs/arm64-v8a/libhugin.a ../../../../src/main/jniLibs/arm64-v8a/libopencv_java3.so -lm "....\ndk-bundle/sources/cxx-stl/gnu-libstdc++/4.9/libs/arm64-v8a/libgnustl_static.a" && cd ."

../../../../src/main/jniLibs/arm64-v8a/libhugin.a: error adding symbols: File in wrong format

clang++.exe: error: linker command failed with exit code 1 (use -v to see invocation)

ninja: build stopped: subcommand failed.

我们知道我们的设备使用 arm64-v8a ABI,但是我们在将我们的静态库编译到这个架构时遇到了严重的问题,所以我们使用 armeabi-v7a。根据下面的这篇文章,它应该是兼容的。

Is arm64-v8a compatible with armeabi-v7a?

您知道我们的静态库或项目可能有什么问题吗?非常感谢

最佳答案

armeabi-v7a apk 将在 arm64 平台上运行;但是要编译成arm64 apk,需要arm64 lib编译成arm64 app(apk)

关于android - 我们的Android静态库格式错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45707048/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com