Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/158.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/visual-studio-2008/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何部署boost库? 我在VisualStudioC++(9版本)中使用了Boost库(特别是Boost文件系统)。此Boost库安装在C驱动器中。我的项目已经完成,因此,我有相应的调试和发布_C++_Visual Studio 2008_Opencv_Boost_Boost Filesystem - Fatal编程技术网

如何部署boost库? 我在VisualStudioC++(9版本)中使用了Boost库(特别是Boost文件系统)。此Boost库安装在C驱动器中。我的项目已经完成,因此,我有相应的调试和发布

如何部署boost库? 我在VisualStudioC++(9版本)中使用了Boost库(特别是Boost文件系统)。此Boost库安装在C驱动器中。我的项目已经完成,因此,我有相应的调试和发布,c++,visual-studio-2008,opencv,boost,boost-filesystem,C++,Visual Studio 2008,Opencv,Boost,Boost Filesystem,现在,我想包括Boost文件系统的特定DLL以进行调试和发布,所以我的第一个问题是我需要复制哪些DLL?它显示了文件系统的许多DLL。我试过的是“boost\u filesystem-vc90-mt-1\u 40.dll”和“boost\u filesystem-vc90-mt-gd-1\u 40.dll”。因为,我从“vc90”中得到了一个想法,我想它的意思是Visual Studio 9.0 第二个问题,即使我没有包括这些Boost文件系统DLL来调试或发布,我的项目EXE文件仍然在工作吗?

现在,我想包括Boost文件系统的特定DLL以进行调试和发布,所以我的第一个问题是我需要复制哪些DLL?它显示了文件系统的许多DLL。我试过的是
“boost\u filesystem-vc90-mt-1\u 40.dll”
“boost\u filesystem-vc90-mt-gd-1\u 40.dll”
。因为,我从“vc90”中得到了一个想法,我想它的意思是Visual Studio 9.0

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

我是C++和Boost的初学者。另外,我正在使用的另一个库是OpenCV,我已经为它复制了相应的DLL(core、highgui和imgproc)以进行调试和发布,这个库工作得非常好。

您有两个选项:

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

如果部署项目的发行版配置,则需要
boost\u filesystem-vc90-mt-1\u 40.dll
库。通常,您可以使用
Dependency Walker
工具查看二进制文件的所有依赖项

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