解決策 1:
ディストリビューションに依存しない* 方法でこれを行うには、次のように ldconfig を grep で使用できます。
ldconfig -p | grep libjpeg
libjpeg がインストールされていない場合、出力はありません。インストールされている場合は、利用可能な各バージョンの行が表示されます。
libjpeg を任意のライブラリに置き換えれば、一般的でディストリビューションに依存しない * ライブラリの可用性を確認する方法が得られます。
何らかの理由で ldconfig へのパスが設定されていない場合は、フル パス (通常は /sbin/ldconfig
) を使用して呼び出すことができます。 .
**99% の確率で*
解決策 2:
ディストリビューションのパッケージ マネージャー (aptitude、yum など) で確認できますが、ディストリビューションを提供していないため、適切なコマンドを提供できません。
もう 1 つの方法は、gcc -ljpeg
を実行することです。 'ld:library not found for -ljpeg' が表示された場合は、gcc がライブラリを見つけられなかったことを意味します (ただし、インストールされていないという意味ではありません)。 from:...' libjpeg が見つかったことを意味します。
locate libjpeg; ls /usr/lib/libjpeg*; ls /lib/libjpeg*
ライブラリがシステムにインストールされているかどうかを確認する別の方法
それを確認する方法は他にもたくさんあります。詳細なコンテキスト (libjpeg がインストールされているかどうかを確認する必要がある理由) を提供していただければ、特定のケースに最適なソリューションを提供できます。
解決策 3:
whereis を使用します
サンプル:
[email protected]:~$ whereis libjpeg
libjpeg: /usr/lib/libjpeg.so /usr/lib/libjpeg.a /usr/lib/libjpeg.la
解決策 4:
私はこれを使用します:
gcc -lpng
ライブラリがインストールされると、以下が生成されます:
undefined reference to 'main'
ライブラリがない場合 インストール:
cannot find -lpng
解決策 5:
deb ベースの配布の場合、できること
dpkg -s packagename
または、ファイル名だけがわかっている場合は、
を使用してくださいlocate filename
通常、ファイル名は libsomething.so[.version] です。