旧手机上的编译错误

时间:2017-03-13 10:27:20

标签: android android-studio

我不得不在Android 15上使用旧智能手机进行编程。我使用Android Studio来执行此操作。当我编译我在较新的smarphone上使用的版本时,我得到了错误:

Error:FAILURE: Build failed with an exception.

* What went wrong:

Execution failed for task ':app:externalNativeBuildDebug'.
> Build command failed.
  Error while executing '/home/xxx/NVPACK/android-sdk-linux/cmake/3.6.3155560/bin/cmake' with arguments {--build /home/xxx/workspace2/NativeCPP/app/.externalNativeBuild/cmake/debug/x86 --target native-lib}
  [1/3] Building CXX object CMakeFiles/native-lib.dir/src/main/cpp/native-lib.cpp.o
  [2/3] Building CXX object CMakeFiles/native-lib.dir/src/main/cpp/IMUSensor.cpp.o
  [3/3] Linking CXX shared library ../../../../build/intermediates/cmake/debug/obj/x86/libnative-lib.so
  FAILED: : && /home/xxx/NVPACK/android-sdk-linux/ndk-bundle/toolchains/llvm/prebuilt/linux-x86_64/bin/clang++  -target i686-none-linux-android -gcc-toolchain /home/xxx/NVPACK/android-sdk-linux/ndk-bundle/toolchains/x86-4.9/prebuilt/linux-x86_64 --sysroot=/home/xxx/NVPACK/android-sdk-linux/ndk-bundle/platforms/android-15/arch-x86 -fPIC -g -DANDROID -ffunction-sections -funwind-tables -fstack-protector-strong -no-canonical-prefixes -Wa,--noexecstack -Wformat -Werror=format-security -fno-exceptions -fno-rtti -g -DANDROID -ffunction-sections -funwind-tables -fstack-protector-strong -no-canonical-prefixes -Wa,--noexecstack -Wformat -Werror=format-security -fno-exceptions -fno-rtti  -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/x86/libnative-lib.so CMakeFiles/native-lib.dir/src/main/cpp/native-lib.cpp.o CMakeFiles/native-lib.dir/src/main/cpp/IMUSensor.cpp.o  /home/xxx/NVPACK/android-sdk-linux/ndk-bundle/platforms/android-15/arch-x86/usr/lib/liblog.so -lm "/home/xxx/NVPACK/android-sdk-linux/ndk-bundle/sources/cxx-stl/gnu-libstdc++/4.9/libs/x86/libgnustl_static.a" && :
  /home/xxx/workspace2/NativeCPP/app/src/main/cpp/Eigen/src/Core/util/Memory.h:228: error: undefined reference to 'posix_memalign'
  clang++: error: linker command failed with exit code 1 (use -v to see invocation)
  ninja: build stopped: subcommand failed.


* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output.

似乎posix_memalign存在问题。怎么可能这样呢?

编辑我想在Android 4.0中使用Android 4.0中的智能手机。应该是什么参数?

compileSdkVersion 19
    buildToolsVersion '19.1.0'
    defaultConfig {
        applicationId "com.example.cyclopus.nativecpp"
        minSdkVersion 15
        targetSdkVersion 19
        versionCode 1
        versionName "1.0"
        testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
        externalNativeBuild {
            cmake {
                cppFlags ""
            }
        }
    }

0 个答案:

没有答案