2

ここで説明されているのと同様の問題が発生しています。新しいプロジェクトを作成し、Eclipseにライブラリパスを追加し、使用するライブラリの名前を追加しました。しかし、MingWリンカーはライブラリを見つけることができません。「\」の代わりに「/」を使用してみましたが(これはIikedの問題の解決策でした)、他のいくつかのことも同様ですが、うまくいきませんでした。mingwのドキュメントで機能するものが見つかりませんでした。

私のコマンドは次のとおりです。

g++ -LD:/ocv/build/x86/mingw/lib -o OCVTest.exe "src\\OCVTest.o" -ltest.a 
c:/mingw/bin/../lib/gcc/mingw32/4.7.2/../../../../mingw32/bin/ld.exe: cannot find -ltest.a
collect2.exe: error: ld returned 1 exit status

このファイルはtest.aと呼ばれます

コマンドラインで使用してみました

g++ -L"D:/ocv/build/x86/mingw/lib" -o OCVTest.exe "src\\OCVTest.o" -ltest.a 

しかし、これも役に立ちませんでした。

MingWとMakeforWindowsをインストールしました。両方をPATH変数に追加しました。

4

1 に答える 1

1

libtest.aという名前を付け、-ltestオプションをg++に使用します。* nix(mingwを含む)の静的ライブラリは、のように名前が付けられているはずですlibxxx.a-lオプションは、指定されたパス(現在およびオプションを介して指定)でライブラリを検索するようにコンパイラに指示します-L。しかし、静的ライブラリを使用してリンクするには、フルネームを指定できます(オプションなし)...libtest.aを渡すだけです。

于 2013-01-26T04:48:31.830 に答える