私のツールチェーンをベンダーの要求とは異なるディレクトリにインストールしたので、COMPILER_PATH、C_INCLUDE_PATH、CPLUS_INCLUDE_PATH、およびLIBRARY_PATH変数を適切に設定することで簡単に解決できる小さな問題を実行しました。回帰ldルックアップ
しかし、私はそう簡単にかわすように見えることはできません1つの問題がある:
[email protected]:/tmp/async$ xscale-linux-g++ -fPIC -DBOOST_ASIO_DISABLE_EPOLL -I/var/lib/c++/boost/boost_1_48_0/target/arm-linux-4.4.2/include -oasync main.cpp -L/var/lib/c++/boost/boost_1_48_0/target/arm-linux-4.4.2/lib/static -pthread -lboost_system -lboost_thread
/var/toolchains/arm-linux/4.4.2/arm-linux-4.4.2/arm-linux/bin/ld: cannot find /usr/local/arm-linux-4.4.2/lib/be/libpthread.so.0
collect2: ld returned 1 exit status
私はld
は、絶対パスでライブラリを探していることになる理由としてわからないけど、それは正確に何がここにあるようです。この動作を回避し、共有ライブラリの正しいパスを提供する方法はありますか?
'ldconfig'設定を確認しましたか?おそらくそれはそこにあり、まだキャッシュに詰まっています。 'man ldconfig'を参照してください。 –