4

C で単純なモデルを (シミュレートされた) データに適合させるために、LU 分解を使用する必要があります

しかし、私はもっと基本的な問題で立ち往生しています: C でパッケージをインストールし、コードでそれらを呼び出すにはどうすればよいですか?

私は C は初めてで、R には慣れています。しかし、行列反転、LU 分解に関するいくつかのテストを行うという割り当てがあり、教授は Lapack を使用して簡単なことを提案しました (したがって、自分でコードを記述する必要はありません)。 LU分解など)。しかし、LAPACK の機能を使用するために、パッケージをインストールしてコード内で呼び出す方法がわかりません。

私は Windows 7 64 ビットを使用しており、コンパイラ コード ブロック 8.02 を使用しています。

助けてくれてありがとう。

4

3 に答える 3

7

通常、その意味で C ライブラリを「インストール」することはありません。通常、Windows には 3 種類のファイルがあります。通常は .h で終わるヘッダー ファイル、ダイナミック ライブラリ、.dll、およびおそらくいくつかのリンカー ファイル (通常は .lib、.a など)。リンカとコンパイラは、これらのファイルをどこかで見つけることができる必要があります。通常、インクルード ディレクトリ パスとライブラリ ディレクトリ パスを設定します。

たとえば、foo というライブラリをダウンロードして、C:\foo に解凍したとします。そのフォルダには、libfoo.afoo.dllおよびfoo.hが存在します。Code::Blocks では、リンカとコンパイラがこれらのファイルを探す場所を認識できるように、インクルード ディレクトリ パスC:\fooとライブラリ パスを指定する必要があります。C:\foofoo ライブラリに対してリンクしているため-lfoo、リンカー コマンド ラインで設定するか、同様のものも必要になります。これは GCC 構文ですが、Code::Blocks は裏で GCC コンパイラを使用していると思います。

Cコード#include <foo.h>では、コンパイラがそれを見つけるだけです。

于 2011-01-19T16:23:32.050 に答える
2

そのライブラリをインストールする必要があり、実際にそのためのツールを提供する場合があります。それらのドキュメントを確認してください(たとえば、ファイルINSTALLまたはREADME分散ソース内)。ライブラリがヘッダーのみを使用している場合は、そのヘッダーをシステム上のディレクトリにコピーするだけでよい場合がありますが、ビルドシステムでそれを実行できる場合があります。

それが完了したら、ソースを探す場所と、ライブラリが実際のライブラリファイルに対してリンクするためにヘッダーだけでなく使用するかどうかをIDEに指示します。いくつかの例の場合にこれがどのように行われ、ライブラリに適応するかについては、Code ::BlocksWikiのドキュメントを参照してください。

于 2011-01-19T16:19:48.177 に答える
2

あなたの状況で行う最も簡単なことは、Cygwinをインストールすることです。setup.exe インストーラーを使用して、GCC および LAPACK ライブラリーをインストールできます。LAPACK ライブラリを使用する場合は、GCC コマンド ラインに -llapack オプションを追加します。

于 2011-01-19T22:25:39.210 に答える