17

C# では、依存関係を構築するプロジェクト参照を追加し、結果のアセンブリを元の Debug/ ディレクトリに置き、そのアセンブリに対して適切にコンパイルするのは非常に簡単です。

そのため、現時点では、Main() を含むプロジェクトと静的ライブラリ プロジェクトを 1 つのソリューションにまとめています。ただし、Main() プロジェクトをコンパイルして bin/Debug/ ディレクトリを調べると、Static.lib ファイルまたは .obj ファイルが見つかりません。 . リンカ エラーが発生します。

おそらく、スタティック ライブラリ プロジェクトによって生成された .obj および .lib ファイルを見つけるために、プロジェクトを構成する必要があると思います (正常にコンパイルされ、実際にそれらのファイルが生成されます)。

私は何かが欠けています.C++を使用したVisual Studioに精通していません.

メイン プロジェクトに参照を追加して、スタティック ライブラリ プロジェクトによって作成されたライブラリを使用するにはどうすればよいですか?

4

5 に答える 5

6

最初に理解しなければならないのは、静的ライブラリは.NETアセンブリのようなものではないということです。これらは.exeにリンクされており、個別のエンティティとして配布されません。

リンカエラーは、ライブラリにリンクしていないことが原因である可能性があります。

リンクする必要のあるライブラリを定義する方法はいくつかあります。1つはリンカー->入力->追加の依存関係の下のプロジェクト設定であり、もう1つは経由する安価なルートです#pragma comment(lib, "path to library")

于 2013-01-30T16:49:21.153 に答える
4

プロジェクトのプロパティ->リンカー->入力->追加の依存関係に移動して、必要な.libファイルの名前を追加できます。

次に、ライブラリが存在するフォルダをVC++ディレクトリ->ライブラリディレクトリに指定する必要があります。

于 2013-01-30T16:48:47.247 に答える
3

これは非常に包括的な答えです: Visual C++: #include files from other projects in the same solution

リンカーの設定だけでなく、別の C++ プロジェクトを参照する際のその他の重要事項についても説明します。(特に C# から来ているが、C++ にあまり精通していない場合)

于 2013-10-23T05:12:05.983 に答える