C++ 流程编译问题,必须修改lib才能使其正常工作
因此,我下载了最新的Boost::Process library并尝试进行编译,结果是:C++ 流程编译问题,必须修改lib才能使其正常工作,c++,boost,process,C++,Boost,Process,因此,我下载了最新的Boost::Process library并尝试进行编译,结果是: libs/boost-1.55.0/build/include/boost/process/operations.hpp:85:36:error:“filesystem\u error”不是“boost::filesystem”的成员。 我确实继续检查了这个文件,我删除了那一行(以及它上面的if语句),修改后它可以很好地编译。奇怪的是,filesystem\u error实际上是boost::filesys
libs/boost-1.55.0/build/include/boost/process/operations.hpp:85:36:error:“filesystem\u error”不是“boost::filesystem”的成员。
我确实继续检查了这个文件,我删除了那一行(以及它上面的if语句),修改后它可以很好地编译。奇怪的是,filesystem\u error
实际上是boost::filesystem
的成员,所以我不明白它为什么抱怨
有没有什么方法可以解决这个问题而不必删除这些行?我真的不想做那样的修改
以下是最新版本(我正在使用Boost 1.55.0,以防您需要版本号)。您需要像我昨天那样修复它[1]: 在
boost/process/operations.hpp
change中
#include <boost/filesystem/path.hpp>
#包括
进入
#包括
#包括
或者只是
#include <boost/filesystem.hpp>
#包括
原因似乎是path.hpp
no间接包含错误类的标题
[1]好的,它隐藏在:)不要链接到一些“可疑”的zip包,立即包含代码。执行
#include
会导致编译错误。你在使用什么操作系统?你太棒了。非常感谢你的回答!
#include <boost/filesystem.hpp>