繁体   English   中英

Visual Studio 2017 C ++项目中的Boost C ++库-“无法打开包含文件”

[英]Boost C++ Libaries in Visual Studio 2017 C++ Project - “Cannot open include file”

我正在尝试将Boost C ++库添加到使用Visual Studio 2017创建的C ++项目中。

我已经按照这里的指示进行 如果那没用,我尝试了这篇文章中的建议。 两种解决方案都不适合我。

我做了什么:

  • 从此预编译的Boost库页面下载了boost_1_69_0-msvc-14.1-64.exe
  • 安装到D:\\local\\boost_1_69_0
  • 在项目中,我加入D:\\local\\boost_1_69_0 属性> VC ++目录>包含目录 ,并添加D:\\local\\boost_1_69_0\\lib64-msvc-14.1 属性> VC ++目录>库目录
  • 我将项目设置为x64 ,并且以上设置是在x64配置中设置的

当我尝试构建项目时,出现以下错误:

错误C1083无法打开包含文件:'boost / regex.hpp':没有这样的文件或目录

指向我的.cpp文件之一中的这一行代码:

#include <boost/regex.hpp>

请转到D:\\ local \\ boost_1_69_0文件夹,查看其中是否有一个名为include的子文件夹。 如果你这样做的,然后代替d:\\本地\\ boost_1_69_0需要设置d:\\本地\\ boost_1_69_0 \\包括 属性> VC ++目录>包含目录

换句话说,尝试在硬盘上找到要包含的文件。 查看文件的完整路径。 将完整路径与您添加到包含目录列表(“ 属性”>“ VC ++目录”>“包含目录” )中的路径进行比较,该路径与您在include伪指令( boost )中的文件名之前提供的相对路径连接在一起。 看看两者是否相同。

如果这样做没有帮助,请确保已更改与尝试构建时相同的构建配置的包含目录列表(如果构建Debug,请确保也更改了Debug的配置)。 由于VS 2015 IDE停止确保同时选择了两者,这很烦人。

如果文件被复制,则必须编译常规库。...如果同一版本的编译器复制了计算机。

发现它失败了,因为我在没有设置“包含/库”文件夹的单元测试项目中包含了具有增强包含的同一个.cpp文件。 我原来的问题中的设置现在可以使用。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM