无法在ODEINT包中编译示例

时间:2012-10-15 12:38:56

标签: c++ boost ode

我正在尝试用C ++解决一组耦合的ODE,我已经决定尝试odeint(available here),因为我已经阅读了很多关于它的好东西。但是我正在编译包中包含的示例。情况如下:

到目前为止,我只下载了包并提取了它。我在Windows XP上运行Visual C ++ 6,我正在编译示例“simple1d”。我收到错误消息:“无法打开包含文件:'boost / config.hpp':没有这样的文件或目录”。

我不清楚我错过了什么。我是否需要完整的增强库来完成这项工作?我的印象是ODEINT是一个“独立”的包。

3 个答案:

答案 0 :(得分:3)

您的错误说编译器无法找到boost库。您应该从boost.org下载它们,并将它们添加到标题路径中。

答案 1 :(得分:1)

您从哪里下载并解压缩包?包主页说它是一个仅包含头的包,所以你只需要让Visual找到头文件。我有一段时间没有使用Visual,但像“Visual 6 add header path”这样的快速google应该是一个很好的起点。看看Where does Visual Studio look for C++ header files?

引自this page

  

在Visual Studio中,转到项目设置对话框。我们想要更改Debug和Release版本的设置,因此在设置字段下,选择“所有配置”。在 C / C ++ 标签下,选择预处理器选项。

软件包tarball有一个名为 boost 的目录:您希望将该目录的路径添加到其他包含目录框中,然后添加#include <boost/numeric/odeint/config.hpp>代码。

<强>更新

然后,您已经正确安装了odeint标头:文件boost / numeric / odeint / config.hpp有一行#include <boost/config.hpp>,这是视觉必须抱怨的;所以我猜这个包不是独立的。它必须安装其他boost头文件。我在包主页或提示任何依赖关系的包tarball中找不到任何内容,所以我想你应该尝试安装boost。下载version 1.51.0 herethis is the windows documentation

答案 2 :(得分:0)

您必须从http://headmyshoulder.github.io/odeint-v2/downloads.html下载odeint并从http://www.boost.org/users/history/version_1_51_0.html下载Boost c ++库。 如果您使用代码块,请右键单击您的项目,选择构建选项,选择搜索目录并为odeint添加一个引用,为boost添加一个引用。