Fedoraに付属のCライブラリをアップグレードする最良の方法は何ですか?手動で?

Fedoraに付属のCライブラリをアップグレードする最良の方法は何ですか?手動で?

JavaFXの使用に問題があり、次のページに投稿しました。スタックオーバーフロー。デフォルトでは、JavaライブラリはJPEGライブラリバージョン90を必要とする基本関数を呼び出します。エラーメッセージは次のとおりです。

java.io.IOException: Wrong JPEG library version: library is 62, caller expects 90

私が使用しようとしているJavaライブラリの以前のバージョン(JavaFX 11)にも、私のシステムで利用可能な最新バージョンのJPEGライブラリが必要であることが奇妙だと思います。私は最新のオペレーティングシステムであるFedora 33を使用しており、常に最新バージョンを維持しています。

明らかに、ライブラリはFedora 34で更新されましたが、Fedora 33のような最先端のシステムでは、私のJPEGがなぜそれほど古いのですか?また、このライブラリをアップグレードする正式な方法は何ですか?手動でコンパイルして置き換える必要がありますか?どのライブラリを更新するのかわかりません。

このコマンドはldconfig -p | grep -P jpe?g以下を返します。

    libmjpegutils-2.1.so.0 (libc6,x86-64) => /lib64/libmjpegutils-2.1.so.0
    libjpeg.so.62 (libc6,x86-64) => /lib64/libjpeg.so.62
    libjpeg.so.62 (libc6) => /lib/libjpeg.so.62
    libjpeg.so (libc6,x86-64) => /lib64/libjpeg.so
    libgdcmjpeg16.so.3.0 (libc6,x86-64) => /lib64/libgdcmjpeg16.so.3.0
    libgdcmjpeg12.so.3.0 (libc6,x86-64) => /lib64/libgdcmjpeg12.so.3.0
    libgdcmjpeg8.so.3.0 (libc6,x86-64) => /lib64/libgdcmjpeg8.so.3.0

コマンドはrpm -qa | grep -P jpe?g次を返します。

    libjpeg-turbo-2.0.5-5.fc33.i686
    libjpeg-turbo-2.0.5-5.fc33.x86_64
    libjpeg-turbo-devel-2.0.5-5.fc33.x86_64
    mjpegtools-libs-2.1.0-20.fc33.x86_64
    openjpeg2-2.3.1-10.fc33.x86_64

openjpegまたはlibjpeg-turboを更新する必要がありますか?

ベストアンサー1

  1. 34 RPMのFedora(libjpeg-turbo-2.0.90-2.fc34.x86_64.rpmまたはlibjpeg-turbo-2.0.90-2.fc34.i686.rpm)をインポートして、目的の場所にJPEGライブラリを解凍するコンパイルします。たとえば、/usr/localにライブラリをインストールします。
  2. 次のようにアプリケーションを実行します。
$ LD_PRELOAD=/path/libjpeg.so.62 application

おすすめ記事