vs2010上的Boost Process错误

时间:2018-01-26 20:47:25

标签: c++ visual-studio visual-studio-2010 boost

我试图在VS2010中使用Boost 1.66,并且在我添加标题后我在编译时遇到了一些问题。任何人都有类似的问题,可以帮我解决这个问题吗?

我需要调用一个ffmpeg进程,并且使用Windows CreateProcess是一个痛苦的**来构建它并且没有用。

Error   1   error C3646: 'noexcept' : unknown override specifier    C:\_libs\boost_1_66_0\boost\process\detail\config.hpp   65
Error   2   error C2660: 'boost::process::process_error::process_error' : function does not take 2 arguments    C:\_libs\boost_1_66_0\boost\process\detail\config.hpp   72
Error   3   error C2660: 'boost::process::process_error::process_error' : function does not take 2 arguments    C:\_libs\boost_1_66_0\boost\process\detail\config.hpp   77
Error   4   error C2440: '<function-style-cast>' : cannot convert from 'std::error_code' to 'boost::process::process_error' C:\_libs\boost_1_66_0\boost\process\detail\config.hpp   82
Error   5   error C2146: syntax error : missing ';' before identifier 'Char'    C:\_libs\boost_1_66_0\boost\process\detail\config.hpp   86
Error   6   error C4430: missing type specifier - int assumed. Note: C++ does not support default-int   C:\_libs\boost_1_66_0\boost\process\detail\config.hpp   86
Error   7   error C2146: syntax error : missing ';' before identifier 'null_char'   C:\_libs\boost_1_66_0\boost\process\detail\config.hpp   86
Error   8   error C2144: syntax error : 'char' should be preceded by ';'    C:\_libs\boost_1_66_0\boost\process\detail\config.hpp   87
Error   9   error C4430: missing type specifier - int assumed. Note: C++ does not support default-int   C:\_libs\boost_1_66_0\boost\process\detail\config.hpp   87
Error   10  error C2086: 'int boost::process::detail::constexpr' : redefinition C:\_libs\boost_1_66_0\boost\process\detail\config.hpp   87

1 个答案:

答案 0 :(得分:1)

Visual Studio 2010,2012,2013不支持noxcept,constexpr。

在加入

之前尝试较旧的提升或添加
#define noexcept
#define constexpr