[英]Cmake error : set_target_properties Can not find target to add properties to: lib_opencv
我在我的 cmake ndk 项目中绑定使用日志进行调试,但是当我尝试添加 log-lib 库时,它会在编译时出现错误:
CMake Error at CMakeLists.txt:21 (set_target_properties):
set_target_properties Can not find target to add properties to: lib_opencv
如果我删除set_target_properties(lib_opencv PROPERTIES IMPORTED_LOCATION ${CMAKE_CURRENT_SOURCE_DIR}/src/main/jniLibs/${ANDROID_ABI}/libopencv_java4.so)
,它将成功编译。
我的 cmakelist:
cmake_minimum_required(VERSION 3.10.2)
project(OPENcv_app)
include_directories(../include)
# opencv
set(OpenCV_STATIC ON)
set(OpenCV_DIR c:/tools/OpenCV-android-sdk/sdk/native/jni)
find_package(OpenCV REQUIRED)
add_library( # Sets the name of the library.
native_opencv SHARED
lib_opencv SHARED IMPORTED
# Provides a relative path to your source file(s).
../ios/Classes/ArucoDetector/ArucoDetector.cpp
../ios/Classes/native_opencv.cpp
)
set_target_properties(lib_opencv PROPERTIES IMPORTED_LOCATION ${CMAKE_CURRENT_SOURCE_DIR}/src/main/jniLibs/${ANDROID_ABI}/libopencv_java4.so)
target_include_directories(
native_opencv PRIVATE
../ios/Classes/ArucoDetector
)
find_library(log-lib log)
target_link_libraries( # Specifies the target library.
native_opencv
${OpenCV_LIBS}
lib_opencv
${log-lib}
)
一个库不能同时被导入和非导入,并且您不能使用相同的add_library
命令声明 2 个目标。 您需要将它们分开:
# create native_opencv target built as part of this project
add_library(native_opencv SHARED
# Provides a relative path to your source file(s).
../ios/Classes/ArucoDetector/ArucoDetector.cpp
../ios/Classes/native_opencv.cpp
)
# create imported library lib_opencv
add_library(lib_opencv SHARED IMPORTED)
set_target_properties(lib_opencv PROPERTIES IMPORTED_LOCATION ${CMAKE_CURRENT_SOURCE_DIR}/src/main/jniLibs/${ANDROID_ABI}/libopencv_java4.so)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.