c++ - 用 .exe 打包库

标签 c++ visual-studio-2008

我已经使用 OpenCV 和 WxWidgets 库创建了一个应用程序。代码在我的开发机器上运行良好。

但是,当我将它转移到另一台 Windows 机器时,出现错误

   *"The program can't start because cv110.dll is missing from your computer.
   Try reinstalling the program to fix this problem".*

现在,我猜测安装与开发中使用的相同版本的 OpenCV 和 WxWidgets 可以解决这个问题,但是对于我的代码的临时第 3 方用户来说,这有点过分了。

在我的 IDE (Windows Visual C++ 2008) 中,我通过 Properties->Linker->Input 链接到相关的 .lib 文件

我将如何打包 .exe 以使其在非开发机器上运行? 即如果我包含 .dll 文件,我将如何更改链接器配置以反射(reflect)这一点?或者,.lib 文件引用的.dll 文件是否可以合并到.exe 中?

抱歉,我知道这个问题以前出现过,但我似乎找不到针对我的情况的解决方案。任何帮助将不胜感激!

最佳答案

OpenCV 是使用动态库构建的

正确的做法是创建一个包含您的 exe 和您需要的正确 dll 的安装程序。参见 https://stackoverflow.com/questions/1285591/installer-recommendation

关于c++ - 用 .exe 打包库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7111727/

相关文章:

c++ - 数组 BST 的插入排序如何工作?

c++ - 使编译器在类型删除中使用 lambda 优化函数调用间接

c++ - 具有左值的C++ std::move()性能明智

C++功耗无法计算

visual-studio-2008 - 当我更改数据库时,我如何知道需要删除什么并重新添加到 Visual Studio 中的 LinqToSql O/R 设计器?

c# - 根据其他列中的值在 gridview 列中显示图像

c++ - 尝试配置 COM 端口时设置 DCB 失败

c++ - 推荐的 GCC 发布构建标志

visual-studio-2008 - Visual Studio 在批处理文件中插入无效字符

visual-studio - VS2008:自动生成的文件和XML文档