c++ - 我无法从 flandmark v0.7 Plataform x86 Win 7 生成 dll

标签 c++ opencv cmake mingw feature-detection

我正在尝试编译我的 flandmark,但它非常复杂。 C:\flandmark\libflandmark\CMakeLists.txt 我放在第一行:

set(OpenCV "C:/opencv248/sources/cmake") 

这是正确的吗?

按照我的完整文件CMakeList.txt:

set(OpenCV "C:/opencv248/sources/cmake")
find_package( OpenCV REQUIRED)
include_directories(${OpenCV_INCLUDE_DIRS})

add_library(flandmark_static STATIC flandmark_detector.cpp flandmark_detector.h liblbp.cpp liblbp.h)
target_link_libraries(flandmark_static ${OpenCV_LIBS})
if(CMAKE_COMPILER_IS_GNUCC)
    set_target_properties(flandmark_static PROPERTIES COMPILE_FLAGS -fPIC)
endif(CMAKE_COMPILER_IS_GNUCC)
set_property(TARGET flandmark_static PROPERTY COMPILE_DEFINITIONS FLANDMARK_STATIC)

add_library(flandmark_shared SHARED flandmark_detector.cpp flandmark_detector.h liblbp.cpp liblbp.h)
target_link_libraries(flandmark_shared ${OpenCV_LIBS})

#setup Config.cmake
SET(FLANDMARK_BASE_DIR "${PROJECT_SOURCE_DIR}/libflandmark")
set(FLANDMARK_BINARY_DIR "${PROJECT_BINARY_DIR}/libflandmark")
configure_file(flandmarkConfig.cmake.in
  "${PROJECT_BINARY_DIR}/libflandmark/flandmarkConfig.cmake" @ONLY)

export(PACKAGE flandmark)

看我用CMake-gui执行时的结果:

OpenCV ARCH: x86
OpenCV RUNTIME: mingw
OpenCV STATIC: OFF
CMake Warning at C:/opencv248/build/OpenCVConfig.cmake:161 (message):
  Found OpenCV Windows Pack but it has not binaries compatible with your
  configuration.

  You should manually point CMake variable OpenCV_DIR to your build of OpenCV
  library.
Call Stack (most recent call first):
  libflandmark/CMakeLists.txt:2 (find_package)


CMake Error at libflandmark/CMakeLists.txt:2 (find_package):
  Found package configuration file:

    C:/opencv248/build/OpenCVConfig.cmake

  but it set OpenCV_FOUND to FALSE so package "OpenCV" is considered to be
  NOT FOUND.

拜托,你能详细告诉我我必须做什么吗? 我不知道为什么他们不提供已经为我们编译的 .dll! :(

谢谢

最佳答案

您只需将 cmake-gui 中的 OpenCV_DIR 变量设置为 OpenCV 的构建目录即可。然后它应该可以正常工作。

关于c++ - 我无法从 flandmark v0.7 Plataform x86 Win 7 生成 dll,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25652538/

相关文章:

c++ - 视觉C++专业

C++ Opencv - 通过套接字获取图像后的图像处理

python - 在图像上查找点坐标

c++ - cmake和netbeans可以玩得好吗?

cmake find_package(JNI) 在 Ubuntu 12.04 amd64 中不起作用

CMake:如何构建外部项目并包含其目标

c++ - 迷宫解算器记录回溯路径

c++ - std::is_base_of 可能实现的解释

c++ - 编译一些简单的 C++ 代码时出错

OpenCV 2.4.13 for C++ 在ubuntu下编译失败