ubuntu trusty tahrは、libblas3
リポジトリからインストールするときに異なる動作をします/usr/lib/libblas.so.3gf
。焦点を当てると、動作が異なり、/usr/lib/x86_64-linux-gnu/libblas.so.3
.dllにインストールされます。この回答。しかし、.3gf
この古いファイル拡張子に関する情報が見つかりません。libblas.so.3
と隣にありますlibblas.so
。何を示しますか.3gf
?
ベストアンサー1
通常、共有ライブラリには1つのファイルと2つのシンボリックリンクが付属しています。
- ファイル
libfoo.so.1.2.3
(後の数字.so
)の名前は、ソフトウェアプロジェクトとして機能するライブラリのバージョンにちなんで指定されます。直接使用されるのではなく、2つのシンボリックリンクのうちの1つを介してのみ使用されます。 - シンボリックリンク
libfoo.so.V
(後の数字.so
)は、「soversion」(共有オブジェクトバージョン)にちなんで命名されました。ライブラリで互換性のない変更が発生するたびにバージョンが変更されます。ABI。プログラムは特定のバージョンのライブラリに関連付けられています。異なるバージョンのライブラリ用に作成されたプログラムがある場合は、異なるバージョンのライブラリを異なるバージョンでインストールできます。 - 記号
libfoo.so
(後に数字なし.so
)は、インストールした開発ファイル(ヘッダー、静的ライブラリ)のバージョンです。プログラムをコンパイルすると、指すバージョンに関係なくリンクされますlibfoo.so
(好ましくはヘッダファイルと互換性があります)。
ファイル名の変換は通常、互換性のない変更が発生するたびに増加する整数ですが、必ずしもそうではありません。
その間、DebianはBLASライブラリの2つのAPI非互換バージョンを維持しました。libblas3
1つはアップストリームプロジェクトのAPIを持ち、libblas3gf
もう1つは「Cインターフェイスへのいくつかのマイナーな変更」。アップストリームAPIに関連付けられているプログラム用にインストールさlibblas3
れたパッケージとDebian APIに関連付けられているプログラム用にインストールされたパッケージ。libblas.so.3
libblas3gf
libblas.so.3gf
2011年に、Debianはこのライブラリの別々のバージョンの保持を中止しました。 (私が理解しているように、Debianの変更や同様のものがアップストリームにマージされているので、3gfバージョンの将来のバージョンには3gflibblas3
バージョンのすべての機能が含まれます)。.so
されたバージョンの実行に使用できます。プログラム。以前のバージョンとの互換性エイリアスを削除するには数年かかりました。 Ubuntu 18.04にはまだ含まれていますが、Ubuntu 20.04には含まれていません。