2011-02-03 2 views
2

Cアプリケーションでta-lib(http://ta-lib.org/)C APIを使用しようとしています。 私はta-libのソースをダウンロードし、make installを使って自分のシステムにインストールしました。ライブラリが正常にコンパイルされ、バイナリが/usr/local/lib/にあります。すべてのアイデアはta-libでソースをコンパイルできません

$ gcc -L/usr/local/lib -lta-lib -o tlc talib_test.c 
/usr/bin/ld: cannot find -lta-lib 
collect2: ld returned 1 exit status 
$ 

間違って何が起こっているのか:TA-libのサイト上で示唆したよう は、その後、私は私のアプリをコンパイルしますか?

OS:私はUbuntu 9を使用しています。

答えて

0

libta-lib.aはどこですか?エラーメッセージは、リンカーがライブラリを見つけることができないことを示唆しています。

1

libta-lib.soの32ビットコピーをインストールし、64ビットテストプログラムをコンパイルしている可能性はありますか、またはその逆ですか?つまり、図書館の種類に不一致がありますか?

を見て、そこにlibta-lib.soがあることを確認しましたか?または、ライブラリが実際にlibta.soなどと呼ばれることがあるので、コマンドラインで-ltaを指定する必要がありますか? (数分コンパイル後に)示すように、私のMac上で


は、ライブラリがインストールされました:

/usr/bin/install -c .libs/libta_lib.lai /usr/gnu64/lib/libta_lib.la 
/usr/bin/install -c .libs/libta_lib.a /usr/gnu64/lib/libta_lib.a 

これはダッシュとアンダースコアの代わり-lta-lib-lta_libを必要とします。

+0

ドキュメントのように '-lta-lib'の代わりに' -lta_lib'を使用すると、私にとってはうまくいっています。 – Justin

関連する問題