Linux でダイナミック ライブラリをロードできません 次のような異常事態が発生した場合
動的ライブラリのパスが (/usr/cluster/.share/lib) の場合 解決: 方法1: /etc/ld.so.confファイルへのパスを追加する、vi /etc/ld.so.conf 次のコンテンツを追加します ld.so.conf.d/*.conf をインクルードする /usr/cluster/.share/lib 方法 2: ターミナルに次のように入力します: 方法3: /etc/profileファイルを変更する MPI_HOME=/usr/clusterをエクスポートする LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$MPI_HOME/.share/lib をエクスポートします。 設定ファイルを有効にするには、ターミナルでsource /etc/profileを実行します。 プログラム実行中に動的ライブラリをロードできない場合の解決策 エラーメッセージは次のとおりです。
一般的には 2 つの理由があります。1 つは、共有ライブラリ (lib*.so.* ファイル) がオペレーティング システムに含まれていないか、共有ライブラリのバージョンが正しくないことです。解決策は、再度ダウンロードしてインストールすることです。 もう 1 つの理由は、共有ライブラリがインストールされているが、共有ライブラリを呼び出す必要があるプログラムが実行されたときに、プログラムがデフォルトの共有ライブラリ パスに従って共有ライブラリ ファイルを見つけることができないことです。解決策は次のとおりです。 共有ライブラリ ファイルが /lib または /usr/lib ディレクトリにインストールされている場合は、ldconfig コマンドを実行します。 ldconfig コマンドの目的は、デフォルトの検索ディレクトリ (b および /usrb) およびダイナミック ライブラリ構成ファイル /etc/ld.so.conf にリストされているディレクトリで共有可能なダイナミック リンク ライブラリ (lib*.so* のような形式) を検索し、ダイナミック ローダー (ld.so) に必要な接続ファイルとキャッシュ ファイルを作成することです。キャッシュ ファイルはデフォルトで /etc/ld.so.cache に設定され、ダイナミック リンク ライブラリ名のソートされたリストが格納されます。 共有ライブラリ ファイルが /usr/local/lib (通常、オープン ソースの共有ライブラリはこのディレクトリにインストールされます) または /lib や /usr/lib 以外のディレクトリにインストールされている場合は、ldconfig コマンドを実行する前に、次のように、新しい共有ライブラリ ディレクトリを共有ライブラリ構成ファイル /etc/ld.so.conf に追加する必要があります。 # cat /etc/ld.so.conf ld.so.conf.d/*.conf をインクルードする # echo "/usr/local/lib" >> /etc/ld.so.conf #ldconfig または、/etc/ld.so.conf.d/ ディレクトリに .conf をサフィックスとして新しいファイルを作成し、ライブラリ ファイルが配置されているディレクトリをそのファイルに追加します。次に、ldconfig を実行して /etc/ld.so.cache ファイルを更新します。 共有ライブラリ ファイルが /lib または /usr/lib 以外のディレクトリにインストールされているが、共有ライブラリ パスを /etc/ld.so.conf ファイルに追加したくない (またはパスを追加する権限がない) 場合。グローバル変数 LD_LIBRARY_PATH は、共有ライブラリを検索するディレクトリをローダーに指示することを意味します。コロンで区切って複数の検索ディレクトリを設定できます。たとえば、mysql を /usr/local/mysql ディレクトリにインストールし、/usr/local/mysql/lib の下に多数のライブラリ ファイルがある場合は、次のステートメントを .bashrc または .bash_profile またはシェルに追加できます。 一般的に言えば、これは許可がない場合や一時的な必要性がある場合に使用される一時的な解決策にすぎません。 プログラムに必要なライブラリ ファイルが、システムに現在存在するライブラリ ファイルのバージョンよりも低い場合は、リンクを作成できます。例えば: 共有ライブラリの読み込み中にエラーが発生しました: libncurses.so.4: 共有ライブラリを開けません オブジェクトファイル: そのようなファイルまたはディレクトリはありません ls /usr/lib/libncu* /usr/lib/libncurses.a /usr/lib/libncurses.so.5 /usr/lib/libncurses.so /usr/lib/libncurses.so.5.3 libncurses.so.4 はないものの、下位互換性のある libncurses.so.5 があることがわかります。 リンクを作成するだけ ln -s /usr/lib/libncurses.so.5.3 /usr/lib/libncurses.so.4 要約する 以上がこの記事の全内容です。この記事の内容が皆様の勉強や仕事に何らかの参考学習価値をもたらすことを願います。123WORDPRESS.COM をご愛顧いただき、誠にありがとうございます。これについてもっと知りたい場合は、次のリンクをご覧ください。 以下もご興味があるかもしれません:
|
>>: フローティングメニューを実装するjQueryプラグイン
序文コンピュータの数値は浮動小数点であるため、計算プロセス中に取得されるデータは通常正確ではなく、そ...
序文tcpdump はよく知られたコマンドライン パケット分析ツールです。 tcpdump コマンド...
目次1. 遭遇した問題2. 問題を分析する3. 本当の問題4. 解決策5. ソリューション効果1. ...
普段はdocker buildコマンドでイメージを生成していますが、コードの更新が頻繁に行われるとn...
前の記事で説明したフォームの自動入力の問題を解決した後、新しい問題が発生しました。ページの一部のスタ...
目次1. インストール: 2. 使用方法: 3. 組み込みメソッド: 4. 使用方法:要約する公式サ...
ウェブページの自動更新: <head></head> の間に次のコードを追加...
この記事では、例を使用して MYSQL パフォーマンス アナライザー EXPLAIN の使用方法を説...
<frameset></frameset>は皆さんもよくご存知のものです。こ...
序文NFS (Network File System) は、ネットワーク ファイル システムを意味し...
MySQL のトランザクションはデフォルトで自動的にコミットされます (autocommit = 1...
目次Matlab セントロイドアルゴリズムMatlab はクローズドな商用ソフトウェアであり、米国政...
Centos7 バージョンをインストールするときに、外部ネットワークへの接続を選択すると、外部ネット...
MySQL 8.0圧縮パッケージのインストール方法、詳細は次のとおりです知らせ:オペレーティング シ...
H5 レイアウトを設計する場合、通常はバナーに遭遇することになります。例えば、2:1 で表示したい場...