0

sourceforge にある Windows バイナリを使用して、Win7 マシンに MathGL ライブラリをインストールしました。私は指示に従い、mathgl bin;include および lib ファイルを対応する mingw フォルダーに含めました。しかし、次のテスト例を実行しようとすると:

#include <mgl2/mgl.h>
int main()
{
  mglGraph gr;
  gr.FPlot("sin(pi*x)");
  gr.WriteFrame("test.png");
}

コンパイルされず、次のエラーが発生します。

ビルドログ:

           from /mingw/lib/gcc/mingw32/../../../include/mgl2/mgl.h:24,
                 from C:\Users\Roadmaster\Desktop\Plot_Xpto\xpto\main.cpp:1:
/mingw/lib/gcc/mingw32/../../../include/mgl2/canvas.h:409: error: expected ';' before '*' token
Process terminated with status 1 (0 minutes, 3 seconds)
2 errors, 0 warnings

ヘッダー ファイルがありません:

#include <gif_lib.h>

プリコンパイルされた Windows フォルダーには、特定のヘッダー "gif_lib.h" がないことに気付きました。

私の質問は次のとおりです。

インストール中に何かを見逃しましたか?? その特定のヘッダーを見つけることができる場所がなかった場合(グーグルで検索しましたが、何もありません:()?

次の手順に従ってライブラリをインストールしました。

"1.3 インストール

MathGL は 4 つの異なる方法でインストールできます。

ソースからコンパイルします。ライブラリでは cmake ビルド システムが使用されます。それを実行するには、次のコマンドを実行する必要があります: cmake 。2 回、root/sudo 権限で make および make install した後。場合によっては、インストール後にライブラリ リストを更新する必要がある場合があります。root/sudo 権限で ldconfig を実行するだけです。デフォルトでオフになっている追加オプションがいくつかあります。FLTK、GLUT、および/またはQtウィンドウを有効にするためのenable-fltk、enable-glut、enable-qt。対応するファイル形式を有効にするための enable-jpeg、enable-gif、enable-hdf5 など。すべての追加機能を有効にするには、enable-all を使用します。基本内部データ型として double を使用するには、オプション enable-double を使用します。言語インターフェースを有効にするには、すべての言語に対して enable-python、enable-octave、または enable-all-swig を使用します。WYSIWYG ツール (cmake-gui) を使用して、それらすべてを表示できます。または cmake -D enable-all=on -D enable-all-widgets=on -D enable-all-swig=on と入力します。コマンドラインですべての機能を有効にします。

プリコンパイル済みバイナリを使用します。MinGW (プラットフォーム Win32) のバイナリがあります。プリコンパイルされたバリアントの場合、アーカイブをコンパイラの場所 (つまり、mingw/lib の mathgl/lib、mingw/include の mathgl/include など) または任意の他のフォルダーとコンパイラのセットアップ パスに解凍するだけで済みます。デフォルトでは、コンパイル済みバージョンには GSL (www.gsl.org) と PNG のサポートが含まれています。そのため、これらのライブラリをシステムにインストールする必要があります (たとえば、http://gnuwin32.sourceforge.net/packages.htmlにあります)。 標準パッケージ (RPM、deb、DevPak など) からコンパイル済みバージョンをインストールします。コマンドを使用して、sourceforge.net SVN から最新のソース (安定していない可能性があります) をダウンロードできます。

svn チェックアウトhttp://svn.code.sf.net/p/mathgl/code/mathgl-2x mathgl-code""

4

1 に答える 1

0

古いバージョンの MathGL の場合、すべての追加ライブラリ (つまり、ヘッダー ファイルがない giflib) がインストールされていることが想定されています。

新しい MathGL バージョンでは、この外部依存関係はすべて「隠され」ており、必要ありません。

于 2013-05-04T14:31:17.337 に答える