如何在Visual Studio 2010 C ++中使用所需的.dll和lib(opencv)文件创建.exe文件包

时间:2014-04-15 11:19:25

标签: c++ visual-studio-2010 opencv dll package

我创建了一个opencv项目,其中包含带有头文件的路径,*。lib和项目属性中的opencv的* .dll文件,我在.cpp中创建了opencv头文件的硬编码路径。让我们说我需要将这个项目交给客户,因此我只需要在客户系统中直接提供.exe文件。

所以请任何人帮助我如何打包.dll和.lib的路径以及我的项目.exe文件。或者是否有任何其他方式可以将.exe文件发送给客户,其中包括所有可以执行opencv以及我在客户系统中的逻辑。

提前感谢,分享答案总是很明显。

2 个答案:

答案 0 :(得分:1)

使用您正在使用的所有内容的相对路径并将它们一起发送(,如果您允许,请先检查许可证!!),或者如果您需要为您的用户提供源代码代码(作为VS解决方案),您不能/不想使用CMake生成解决方案文件来硬编码工具的路径。

如果您需要将二进制文件与可执行文件一起打包(并且仍然允许),您可以使用安装程序打包应用程序,如Inno Setup

您需要确保应用程序所需的每个依赖项都已发送,否则您的客户将无法运行您的软件。要在Win环境中查找依赖项,请尝试使用visual studio的每个副本附带的依赖项工具

作为旁注:你不应该在include指令中放置完整的绝对路径,例如

#include "C:\mysystem\helloworld\app\opencv\header.h"

因为在部署或重新分发源时,这是编译问题或不必要的预处理的必然配方。这不适用于二进制文件:它们只需要找到所需的已编译依赖项/工具。

答案 1 :(得分:1)

Visual Studio 2010不提供C ++的包创建。

在我的意见中你必须使用第三方软件 搜索所需[Advanced Installer]dll的{​​{1}} 1 让我们以安装程序的形式创建软件包。

并且包含在标题中的路径。

如果您有.exe,那么运行您的应用程序无关紧要。

希望这会对你有所帮助。