У меня возникли проблемы с попыткой включить код Matlab в NDK Android Studio. Но ошибки:Android C++ Ошибка Matlab NDK: неопределенная ссылка на :: rtNaN
Error:FAILURE: Build failed with an exception.
* What went wrong:
Execution failed for task ':accelerometer:externalNativeBuildDebug'.
> Build command failed.
Error while executing 'C:\Users\Grace\AppData\Local\Android\Sdk\cmake\3.6.3155560\bin\cmake.exe' with arguments {--build C:\Users\Grace\Documents\test2\Sensorgraphchanged\accelerometer\.externalNativeBuild\cmake\debug\arm64-v8a --target accelerometergraph}
[1/1] Linking CXX shared library C:\Users\Grace\Documents\test2\Sensorgraphchanged\accelerometer\build\intermediates\cmake\debug\obj\arm64-v8a\libaccelerometergraph.so
FAILED: cmd.exe /C "cd . && C:\Users\Grace\AppData\Local\Android\sdk\ndk-bundle\toolchains\llvm\prebuilt\windows-x86_64\bin\clang++.exe -target aarch64-none-linux-android -gcc-toolchain C:/Users/Grace/AppData/Local/Android/sdk/ndk-bundle/toolchains/aarch64-linux-android-4.9/prebuilt/windows-x86_64 --sysroot=C:/Users/Grace/AppData/Local/Android/sdk/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 -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 -std=c++11 -Wall -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,libaccelerometergraph.so -o C:\Users\Grace\Documents\test2\Sensorgraphchanged\accelerometer\build\intermediates\cmake\debug\obj\arm64-v8a\libaccelerometergraph.so CMakeFiles/accelerometergraph.dir/sensorgraph.cpp.o -landroid -lGLESv2 -llog -lm "C:/Users/Grace/AppData/Local/Android/sdk/ndk-bundle/sources/cxx-stl/gnu-libstdc++/4.9/libs/arm64-v8a/libgnustl_static.a" && cd ."
CMakeFiles/accelerometergraph.dir/sensorgraph.cpp.o: In function `sensorgraph::rt_InitInfAndNaN(unsigned long)':
C:\Users\Grace\Documents\test2\Sensorgraphchanged\accelerometer\src\main\cpp/sensorgraph.cpp:306: undefined reference to `sensorgraph::rtNaN'
C:\Users\Grace\Documents\test2\Sensorgraphchanged\accelerometer\src\main\cpp/sensorgraph.cpp:306: undefined reference to `sensorgraph::rtNaN'
CMakeFiles/accelerometergraph.dir/sensorgraph.cpp.o: In function `sensorgraph::b_getAllPeaks(double const*, double*, int*, double*, int*, double*, int*)':
C:\Users\Grace\Documents\test2\Sensorgraphchanged\accelerometer\src\main\cpp/sensorgraph.cpp:725: undefined reference to `sensorgraph::rtNaN'
C:\Users\Grace\Documents\test2\Sensorgraphchanged\accelerometer\src\main\cpp/sensorgraph.cpp:725: undefined reference to `sensorgraph::rtNaN'
CMakeFiles/accelerometergraph.dir/sensorgraph.cpp.o: In function `sensorgraph::b_findLocalMaxima(double const*, double*, int*, double*, int*)':
C:\Users\Grace\Documents\test2\Sensorgraphchanged\accelerometer\src\main\cpp/sensorgraph.cpp:431: undefined reference to `sensorgraph::rtNaN'
CMakeFiles/accelerometergraph.dir/sensorgraph.cpp.o:C:\Users\Grace\Documents\test2\Sensorgraphchanged\accelerometer\src\main\cpp/sensorgraph.cpp:431: more undefined references to `sensorgraph::rtNaN' follow
clang++.exe: 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.
Одна из ошибок, возникших в этой строке:
for (ii = 0; ii < i; ii++) {
yTemp[ii_data[ii] - 1] = rtNaN; <- error
}
где определение rtNaN является
typedef double real_T;
static real_T rtNaN;
в исходном файле
I В моем файле build.gradle добавлено следующее: android { compileSdkVersion 23 //23.0.0 buildToolsVersion '23 .0.3'
sourceSets.main{
jni.srcDirs=[]
jniLibs.srcDir 'src/main/libs'
}
... }
Могу ли я спросить, почему произошла эта ошибка, и как я могу это исправить? Благодаря
Я уже добавил, что ... это не сработало .... – Horgi
Показывает ту же ошибку или изменила ли она? –
По-прежнему такая же ошибка ... – Horgi