1

プロジェクトで SRILM パッケージを使用したいと考えています。SRILM のコンパイルに成功し、~/srilm/lib/i686-ubuntu に静的ライブラリが作成されました。Eclipse で C++ プロジェクトを作成し、libdstruct.a をライブラリに追加し、そのパスをライブラリを検索するためのディレクトリとして設定しました。しかし、日食は私のライブラリを見つけることができません! 次のコードは、Eclipse でビルド プロジェクト ボタンをクリックしたときの出力です。ご覧のとおり、g++ は -llibdstruct を見つけることができないと言います

**** Build of configuration Debug for project test ****

make all 
Building file: ../src/test.c
Invoking: GCC C Compiler
gcc -O0 -g3 -Wall -c -fmessage-length=0 -MMD -MP -MF"src/test.d" -MT"src/test.d" -o"src/test.o" "../src/test.c"
Finished building: ../src/test.c

Building target: test
Invoking: GCC C Linker
gcc -L/home/atp/srilm/lib/i686-ubuntu -o"test"  ./src/test.o   -llibdstruct
/usr/bin/ld: cannot find -llibdstruct
collect2: ld returned 1 exit status
make: *** [test] Error 1
4

1 に答える 1

2

/usr/bin/ld: -llibdstruct が見つかりません

-llibdstructflag をリンカーに渡すと、 liblibdstruct.a. そのようなファイルはないので、リンカは正当に不平を言います。

実際に必要なファイルは と呼ばれlibdstruct.a、渡す正しいフラグは-ldstruct.

于 2012-06-04T00:39:03.840 に答える