OpenCVを使用しているアンドロイドプロジェクトがあり、ネイティブC++コードからOpenCVを使用する必要があります。しかし、ライブラリをリンクするcmakeを設定するのに問題があります。私はcmakeやgradleについて知識がありません。(NDKを使用している)AndroidのネイティブC++からOpenCVを使用する方法
私はいくつかのアドバイスを見つけ、自分でCMakeLists.txtを書き込もうとしましたが、成功しませんでした。現在、私のCMakeLists.txtは次のようになります。私は私のプロジェクトを実行しようとすると
cmake_minimum_required(VERSION 3.4.1)
set(CMAKE_VERBOSE_MAKEFILE on)
add_library(cpp_native_code SHARED src/main/cpp/jni_interface.cpp)
# find all other source files
file (GLOB cpp_code_files src/main/cpp/*.cpp src/main/cpp/*.hpp)
# add then to project
target_sources(cpp_native_code PUBLIC ${cpp_code_files})
find_library(log-lib log)
target_link_libraries(cpp_native_code ${log-lib})
set(path_to_opencv C:/Programs/OpenCV_Android_SDK)
include_directories(${path_to_opencv}/sdk/native/jni/include)
add_library(lib_opencv SHARED IMPORTED)
set_target_properties(lib_opencv PROPERTIES IMPORTED_LOCATION
${CMAKE_SOURCE_DIR}/src/main/jniLibs/${ANDROID_ABI}/libopencv_java3.so)
target_link_libraries(cpp_native_code lib_opencv)
、私はこのエラーを取得する:
Error:error: '../../../../src/main/jniLibs/arm64-v8a/libopencv_java3.so',
needed by '../../../../build/intermediates/cmake/debug/obj/arm64-
v8a/libcpp_native_code.so', missing and no known rule to make it
私はOpenCVの3.3.0を使用しています。必要に応じて、自分のプロジェクト構造hereのスクリーンショットを提供します。 OpenCVはアンドロイドから直接使用すると動作します。
私が間違っていると誰かに助言してもらえますか?あるいは、情報があれば、私は書きませんでしたし、それは重要です。
ありがとうございました。 thisプロジェクト
ノートで