2011-02-03 16 views
2

Cを起動してWindows XPで開発する...私が含むライブラリ(個人的なものがあれば)は特定のディレクトリになければなりませんか?または、コンピュータのコンテンツがインデックスに登録されて検索されますか?初心者のCライブラリについての質問

おかげ

答えて

5

これらはいずれのディレクトリにも置くことができ、インデックスは作成されません。コンパイラに "インクルードディレクトリ"のリストを渡すと、これらのディレクトリのヘッダを検索します。同様に、.libファイルが検索されるリンカーに "ライブラリディレクトリ"のリストを渡すことができます。これらのパラメーターをコンパイラーまたはリンカーに渡す方法の詳細は、使用しているコンパイラーまたはIDEによって異なります。

+0

ありがとうDevC++の指示 – tekknolagi

+1

CodeBlocksをお勧めします... Dev-C++は簡単なプログラムでは問題ありませんが、2005年以降に更新されておらず、かなり簡単な機能が欠けています(検索機能が不器用です)。 CodeBlocksはgccをサポートしているので、プロジェクトの移植は面倒ではありません。 –

3

短い答えは、あなただけの実行可能ファイルと同じディレクトリにライブラリ(私は推測すなわち、DLLファイル)を置くことができ、それらが発見されるということです。

長い答えは本当に長いですが、今のところあなたは上記を知るだけで逃げることができます!

0

これらは、任意のディレクトリに置くことができます。リンカーは、実行可能ファイルが作成された場所を知る必要があります。 gccのようなコマンドラインコンパイラを使用している場合は、 "-L {directory}"や "-l {library file name}"のようなオプションを使用して、コンパイルに含めるライブラリの場所を指定します。これは各コンパイラによって異なる可能性があるので、各コンパイラのマンページ/ヘルプを参照する必要があります(しかしこれはかなり一般的です)。

0

一般に、Cコンパイラツールチェーンによってサードパーティ製(または個人用)ライブラリが自動的に検出されることはほとんどありません。

ツールチェーンによっては、コンパイラがライブラリのヘッダを見つけることができるように、リンカがライブラリを見つけるためのいくつかの設定を行う必要があります。

ライブラリーを静的にリンクしてプログラムを構築する場合は、実行時にライブラリーを見つけるために何も特別な操作を行う必要はありません(実行可能ファイルの一部であるため)。ライブラリが動的にリンクされている場合は、実行時にライブラリが適切な場所にあることを確認する必要があります(これは、同じディレクトリにあることを確認するだけで簡単です)。

残念なことに、各コンパイラにはこの設定を実行する独自の方法があります(IDEを使用するかどうかによって異なる場合があります)。詳細は使用する特定のコンパイラによって異なります。