建设有静态库的OpenCV的应用

问题描述:

编辑:建设有静态库的OpenCV的应用

问题了几步后解决。您可以在OpenCV Q & A页面上查看我的帖子。

http://answers.opencv.org/question/152366/build-application-with-static-libraries/

我想静态链接我的C++(CMake的)申请,而没有安装OpenCV的另一台计算机上运行。

到目前为止,

  1. 我建OpenCV的从源代码通过BUILD_SHARED_LIBS设置为OFF,这样我就可以看到lib目录下的库文件。 (带.a扩展名)

  2. 我编辑了OpenCV新版本的环境变量,我的IDE确实看到包含目录和文件,所以这一步似乎也没问题。

  3. 增加 “-static” 参数target_link_libraries命令中的CMake:

    target_link_libraries(HoGPeopleDetector ${OpenCV_LIBS} "-static") 
    

然后重建的应用,EXE尺寸从200 KB上升至1.6 MB。所以我猜连接过程是成功的。

当我在IDE中运行它时,该应用程序运行良好。但是,当我尝试从EXE文件运行它时,它仍然期望DLL文件。 (libopencv_core310.dll也许更多)

IDE:克利翁2017年1月2日的OpenCV:3.1

问题了几步后解决。您可以在OpenCV Q & A页面上查看我的帖子。

http://answers.opencv.org/question/152366/build-application-with-static-libraries/