gpt4 book ai didi

c++ - 如何部署boost库?

转载 作者:搜寻专家 更新时间:2023-10-31 01:09:53 26 4
gpt4 key购买 nike

我在 Visual Studio C++(9.0 版)中为我的项目使用了 Boost 库(特别是 Boost 文件系统)。这个Boost库安装在C盘。我的项目已经完成,因此,我有相应的Debug和Release。

现在,我想将 Boost 文件系统的特定 DLL 包含到调试和发布中,所以我的第一个问题是我需要复制哪些 DLL?它显示了许多文件系统的 DLL。我试过的是 "boost_filesystem-vc90-mt-1_40.dll""boost_filesystem-vc90-mt-gd-1_40.dll"。因为,我从“vc90”中得到了一个想法,我认为它对 Visual Studio 9.0 意味着什么?

第二个问题,即使我没有将这些 Boost 文件系统 DLL 包含到 Debug 或 Release 中,我的项目 EXE 文件仍然有效吗?谁能解释为什么会这样?我试图检查我的环境变量中是否有 Boost 库路径,但不幸的是我在那里找不到它们。非常感谢。

P.S.:我是 C++ 和 Boost 的初学者。而且,我正在使用的另一个库是 OpenCV,我已经将相应的 DLL(核心、highgui 和 imgproc)复制到 Debug 和 Release 中,这个库运行良好。

最佳答案

你有两个选择:

一个。将 Boost DLL 与您的二进制文件一起部署。回答您的问题 - 当然,如果您的项目依赖于 Boost,则在运行时需要这些库,没有它们您的二进制文件将无法启动。

如果您部署项目的 Release 配置,那么您需要 boost_filesystem-vc90-mt-1_40.dll 库。通常,您可以使用 Dependency Walker 工具查看二进制文件的所有依赖项。

静态链接 Boost 库,在这种情况下,您的二进制文件不会对 Boost DLL 具有运行时依赖性,因此您不必部署它们

关于c++ - 如何部署boost库?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16542103/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com