最新バージョン2.2.0の代わりにlibfannバージョン2.0.1を使用しようとしていますが、その方法がわかりませんでした。それを行う方法について何か考えはありますか?
通常、これは完全に機能します。
gcc fann_calculator.c -o run_fann_calculator -lfann -lm
ここで、fann_calculator.cには、ニューラルネットワークを呼び出すプログラムが含まれています。
ありがとう
最新バージョン2.2.0の代わりにlibfannバージョン2.0.1を使用しようとしていますが、その方法がわかりませんでした。それを行う方法について何か考えはありますか?
通常、これは完全に機能します。
gcc fann_calculator.c -o run_fann_calculator -lfann -lm
ここで、fann_calculator.cには、ニューラルネットワークを呼び出すプログラムが含まれています。
ありがとう
これは、2つのライブラリがどこにあるかによって異なります。それらが同じディレクトリにインストールされている場合(たとえば、両方がにインストールされている場合/usr/lib/
)、おそらく最も若いディレクトリを取得します。
ld.so(8)およびldd(1)のマニュアルページを注意深く読むことをお勧めします。確かに、どのライブラリがロードされているかを追跡できます(たとえば、LD_DEBUG
環境変数を使用)。ライブラリのインストール後に、ldconfigを適切に再実行することを忘れないでください。
LD_LIBRARY_PATH
トリックをプレイすることもできます。たとえば、に設定して、必要な正確なライブラリに$HOME/lib:/usr/lib
適切なシンボリックリンクをインストールします。$HOME/lib/
たとえば、あなたはするかもしれません
ln -s /usr/lib/libfann.so.2.0.1 $HOME/lib/libfann.so.2
export LD_LIBRARY_PATH=$HOME/lib:/usr/lib:/lib
次にldd run_fann_calculator
、期待される[バージョンの]libfann
ライブラリを取得することを確認します。
プログラムライブラリのハウツーを読むことを忘れないでください。のような適切なフラグをldに渡したい場合があります-rpath
。gcc
おそらく、次のような Gccリンクオプションを使用して、それらを渡す必要がある場合があります。-Wl