【问题标题】:Visual Studio not finding boost include files in release mode (works in debug)Visual Studio 在发布模式下找不到提升包含文件(在调试中工作)
【发布时间】:2015-11-18 19:49:21
【问题描述】:

我在 Visual Studio 2013 Express 中使用 boost。

Visual Studio 在调试模式下找到#include <boost/filesystem.hpp>,但不是在发布模式下。

当我尝试在发布模式下编译时,它说:

Error 1 error C1083: Cannot open include file: 'boost/filesystem.hpp': No such file or directory

当我右键单击#include 指令手动打开文件时,它在调试配置中工作,但在发布时又不行,它说:

File 'boost/filesystem.hpp' not found in current source file's directory or in build system paths.

我检查了构建配置和

  • C/C++ -> 常规 -> “其他包含目录”
  • 链接器 -> 常规 -> “其他库目录”
  • 链接器 -> 输入 -> “其他依赖项”

两种配置都相同。

我是否需要像错误所说的那样编辑“构建系统路径”?我认为这就是上面三个选项的作用。

还有什么可能导致这个问题?

【问题讨论】:

  • 我做不到,我没有管理员权限,但如果这真的是解决方案,我会问我是否可以暂时获得它们。

标签: c++ boost visual-studio-2013 include


【解决方案1】:

仔细检查您是否检查了实际无法构建的项目的设置。我在使用 boost::optional 时遇到了同样的问题。我只是忽略了另一个项目 (UnitTests) 失败了,而不是我怀疑的项目 (CppPlaygroundLib),因为通过关注包含错误消息的行误解了构建输出:

1>----- 构建开始:项目:UnitTests,配置:发布 Win32 ------

1> FooTests.cpp

1>c:\projects\playground\cppplayground\cppplaygroundlib\foo.h(3):致命错误 C1083:无法打开包含文件:'boost/optional/optional.hpp':否这样的文件或目录

========== 构建:0 成功,1 失败,2 最新,0 跳过 ==========

C/C++->General->Additional Include Directories 中添加了缺少的 boost 路径后,我的解决方案编译成功。

【讨论】:

    【解决方案2】:

    Visual Studio 中的项目属性页对于两种配置都不相同。 在属性页,只需将配置(左上角)设置为发布,并为发布构建单独设置配置。

    【讨论】:

      猜你喜欢
      • 2011-09-02
      • 1970-01-01
      • 2021-10-17
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-08-16
      • 2022-01-20
      相关资源
      最近更新 更多