1

Visual Studio 2008/VC9 のものを Code::Blocks/MinGW に移植していますが、何らかの理由でリンカがワークスペース内の別のプロジェクトからスタティック ライブラリを見つけることができません。

Visual Studio 2008 では、静的 lib プロジェクトを依存関係として設定するだけで、正しい順序でビルドされ (つまり、他のプロジェクトをリンクする前に静的 lib をビルドする必要があります)、構成用の正しいライブラリをリンクできます。

Code::Blocks でそのようなオプションを見つけることができなかったので、最初に静的ライブラリ (libcommon.a) を明示的にビルドしてから、他のプロジェクトの「ビルド オプション」の下で「リンカー」に「libcommon.a」を追加するようにしました。設定"。.a ファイルはプロジェクト ファイルと同じディレクトリにありますが、他のプロジェクトのリンカーから、見つからないというエラーが表示されます...

ld.exe が -lcommon を見つけることができません

プロジェクトファイルのすぐ隣にあるにもかかわらず、ライブラリが見つからないように私は何をしていますか?

また、単一のソリューション/ワークスペース内で Visual Studio の依存関係をシミュレートするより良い方法はありますか?

4

1 に答える 1

2

どうやら、プロジェクト ファイルを含むディレクトリはリンカの検索パスに含まれていないため、プロジェクトのライブラリ ファイルを含むディレクトリのリストに「.\」を追加して明示的に定義する必要がありました。

于 2009-12-12T20:47:32.470 に答える