visual-studio-2010 - 将错误与boost,VS2010和CMake链接

标签 visual-studio-2010 qt opencv boost cmake

我一直在搜寻这个答案。我已经尝试过针对Stack和其他网站上发布的类似问题的建议。我的工具链包括一台x64机器,该机器带有Windows 7,Visual Studio 2010,opencv 2.4,qt 4.8和boost。我使用CMake配置我的所有项目,该软件会找到所有这些库,并包括并创建我的Visual Studio项目。我已经编译了两个版本的boost,一个是在命令行中构建的32位版本,并放置在\ boost \ boost_1_47_0 \ lib \ win32中,另一个是在Windows SDK v7.1 64位编译器中编译并存储在其中的64位。 \ boost \ boost_1_47_0 \ lib \ x64。除了boost之外,项目中的所有内容都可以正常编译。我收到编译器错误:

fatal error LNK1104: cannot open file 'libboost_filesystem-vc100-mt-1_47.lib'

提醒一下,CMake正在处理我的所有链接,并正确定位了该库并将其添加到Visual Studio项目中。我可以通过查看Properties-> Linker-> Command Line来验证这一点。在这里,除了代表其他库的文件外,它还列出了:
"C:\Tools\boost\boost_1_47_0\lib\x64\boost_filesystem-vc100-mt-1_47.lib"
"C:\Tools\boost\boost_1_47_0\lib\x64\boost_program_options-vc100-mt-1_47.lib"
"C:\Tools\boost\boost_1_47_0\lib\x64\boost_date_time-vc100-mt-1_47.lib"
"C:\Tools\boost\boost_1_47_0\lib\x64\boost_thread-vc100-mt-1_47.lib"

我可以通过手动将我的boost \ boost_1_47_0 \ lib \ x64目录添加到Properties-> Linker-> General-> Additional Library Dependencies中来抑制此错误。编译没有错误。但是,当我运行应用程序时,遇到系统错误,告诉我:
The program can't start because boost_filesystem-vc100-mt-1_47.dll is missing from your computer. Try reinstalling the program to fix this problem.

在这个/ x64目录中,我有:
boost_filesystem-vc100-mt-1_47.dll
boost_filesystem-vc100-mt-1_47.lib
libboost_filesystem-vc-100-mt-1_47.dll

任何见解将令人难以置信的赞赏。谢谢!

最佳答案

解决运行时错误:

将dll的位置添加到PATH环境变量中。
例如在我的机器上:

set PATH=%PATH%;c:\users\chris\boost_regex-vc140.1.63.0.0\lib\native\address-model-32\lib

或将dll复制到PATH中已经存在的目录中

看到这里:https://msdn.microsoft.com/en-us/library/7d83bc18.aspx?f=255&MSPPError=-2147217396

关于visual-studio-2010 - 将错误与boost,VS2010和CMake链接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17310069/

相关文章:

c++ - Qt - 如何从 const 函数追加到本地列表

opencv - 在OpenCV中自动选择最佳的JPEG压缩?

java - openCV 中 BROWN 颜色的 HSV 值范围是多少?

c++ - 在vs2010中使用iostream时,出现错误C2039 : 'exit' : is not a member of '` global namespace''

c# - VS2010中用MSTest测试运行报错

c++ - 我可以从 ui 实现 QWebView 的方法吗?

python - OpenCV VideoCapture 在 Flask 项目中不起作用,但在基本示例中起作用

visual-studio-2010 - 如何首先向 Visual Studio 2010 添加默认值以外的其他监 window 口?

c# - VS2010 中跨多个 Web 服务的通用 DTO

c++ - 向自定义 QWidget 添加滚动条