【发布时间】:2017-07-13 21:58:11
【问题描述】:
现在我有一个人脸检测任务。检测人脸并提取人脸区域以保存。该程序接受两个参数。一个是源目录C:\data\src,另一个是目标目录C:data\des。
基本上,我们可以通过VS2013编译并运行程序。但是现在我想通过命令行在另一台没有Visual Studio的windows电脑上编译和运行项目!我该怎么办!
总之,我需要给程序写一个接口,方便别人使用。因为别人可能没有VS开发环境
环境依赖有两种,VS配置如下。
一个是opencv3.1:
- C++ 包含目录
- opencv\build\include
- opencv\build\include\opencv
- opencv\build\include\opencv2
- 库目录
- opencv\build\x64\vc12\lib
另一个是 dlib 18.17:
- C++ 包含目录
- dlib-18.17\dlib\全部
- dlib-18.17\dlib\external\libjpeg
- dlib-18.17\dlib\external\libpng
- dlib-18.17\dlib\external\zlib
- 库目录
- dlib-18.17\dlib
- dlib-18.17\dlib\外部
【问题讨论】:
-
为什么需要多次编译?只需分发可执行文件。
-
谢谢! VS项目可以在没有VS的情况下运行吗?如何获得可执行项目?
-
几乎你目前拥有的每一个windows程序都是在Visual Studio的一个版本中完成的,它的目的是创建独立的程序。只需将可执行文件复制到目标计算机并查看是否缺少任何 DLL 并将其包括在内。只是不要分发您构建的调试版本。除非您在目标 PC 中也安装了相同的 Visual Studio 版本,否则该程序不会运行。
-
好的,谢谢!我将尝试发布版本!但实际上,我的项目分为检测人脸、分类等几个功能模型,每个模型都应该有一个程序入口(主函数接受参数)。我想分别调用每个文件来完成不同的功能。
标签: c++ visual-studio-2013 cmake