3

私は C++ で結合された ODE のセットを解こうとしていますが、odeint (ここで入手可能) について多くの良いことを読んだので試してみたいと思いました。ただし、パッケージに含まれている例をコンパイルしています。状況は次のとおりです。

これまでのところ、パッケージをダウンロードして解凍しただけです。Windows XP で Visual C++ 6 を実行しており、サンプル "simple1d" をコンパイルしています。「インクルード ファイルを開けません: 'boost/config.hpp': そのようなファイルまたはディレクトリはありません」というエラー メッセージが表示されます。

私が欠けているものは私には明らかではありません。これを機能させるには完全なブースト ライブラリが必要ですか? ODEINT は「スタンドアロン」パッケージであるという印象を受けました。

4

3 に答える 3

3

エラーは、コンパイラがブースト ライブラリを見つけられないことを示しています。これらは boost.org からダウンロードし、ヘッダー パスにも追加する必要があります。

于 2012-10-15T14:46:14.660 に答える
1

パッケージをどこにダウンロードして解凍しましたか? パッケージのホームページには、ヘッダーのみのパッケージであると記載されているため、Visual にヘッダー ファイルを検索させるだけで済みます。しばらく Visual を使用していませんでしたが、「Visual 6 add header path」などの簡単なグーグル検索から始めるのがよいでしょう。Visual Studio は C++ ヘッダー ファイルをどこで検索しますか? をご覧ください。.

このページからの引用:

Visual Studio 内で、[プロジェクト設定] ダイアログに移動します。デバッグ バージョンとリリース バージョンの両方の設定を変更したいので、[設定の対象]フィールドで [すべての構成] を選択します。[ C/C++ ] タブで、[プリプロセッサオプション] を選択します。

パッケージ tarball にはboostというディレクトリがあります。そのディレクトリのパスを [追加のインクルード ディレクトリ]ボックスに追加#include <boost/numeric/odeint/config.hpp>してから、コードに追加します。

アップデート

次に、すでに odeint ヘッダーが適切にインストールされているように見えます: ファイル boost/numeric/odeint/config.hpp には、#include <boost/config.hpp>視覚的に不平を言う必要がある行があります。そのため、パッケージはスタンドアロンではないと思います。他のブースト ヘッダー ファイルをインストールする必要があります。パッケージのホームページにもパッケージの tarball にも、依存関係について言及しているものが何も見つからないので、boost もインストールしてみてください。ここからバージョン 1.51.0をダウンロードしてください。これは Windows のドキュメントです。

于 2012-10-15T13:34:49.163 に答える
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 用の 2 つの参照を追加します。

于 2013-10-31T11:30:11.647 に答える