我有一个使用OpenCV的项目,其项目文件是通过cmake生成的。现在在CMake中添加opencv库通常是这样的:
find_package(OpenCV REQUIRED core highgui gpu)
add_executable(SomeExecutable someSource.cpp)
target_link_libraries(SomeExecutable ${OpenCV_LIBS})
将libs核心,highgui和gpu链接到此可执行文件。现在,如果我有一个包含多个可执行文件的项目,是否可以将不同的OpenCV库添加到不同的可执行文件中? (例如,因为我不希望其他应用程序加载不必要的库)。
答案 0 :(得分:1)
您不应将目标与所有找到的包相关联。而不是写:
target_link_libraries(SomeExecutable ${OpenCV_LIBS})
你可能想写:
target_link_libraries(SomeExecutable cxcore highgui)
对于OpenCV库的名称,请检查CMake路径中的FindOpenCV.cmake文件。