私のLinux Centos 7コンピュータにpngとEBImage Rパッケージをインストールしようとしています。常に次のエラーメッセージが表示されます。
Error: package or namespace load failed for ‘png’ in dyn.load(file, DLLpath = DLLpath, ...):
unable to load shared object '/home/rico/R/x86_64-redhat-linux-gnu-library/3.6/00LOCK-png/00new/png/libs/png.so':
libpng16.so.16: cannot open shared object file: No such file or directory
Error: loading failed
Execution halted
ERROR: loading failed
* removing ‘/home/rico/R/x86_64-redhat-linux-gnu-library/3.6/png’
Warning in install.packages :
installation of package ‘png’ had non-zero exit status
The downloaded source packages are in
‘/tmp/RtmpX4o4D5/downloaded_packages’
私はこれを試みます:
yum install libpng-devel
それは私を出力します:
Package 2:libpng-devel-1.5.13-7.el7_2.x86_64 already installed and latest version
Nothing to do
この問題を解決する方法を知っていますか?ありがとうございます。
答え1
Rパッケージに必要なもの(1.6.四半期)ですが、CentOS 7のデフォルトバージョンはユーザーがインストールしたバージョン(パッケージlibpng16.so.16
を通じて利用可能な1.5四半期)です。libpng
使っても大丈夫なら広告リポジトリlibpng 1.6は次の場所にあります。GetPageSpeedストレージ:
sudo yum -y install https://extras.getpagespeed.com/release-latest.rpm
sudo yum install libpng16
または、解凍したファイルをルートファイルシステムに配置するため、お勧めできませんが、次の場所にあるlibpng16にプリコンパイルされたバイナリを使用できます。ここ:アーカイブの抽出、プリコンパイルされたライブラリファイルからのシンボリックリンクの生成、libpng16.so.16
アーカイブからパッケージのインストールまでのカスタムインクルードパスのR
提供など。
答え2
何らかの理由でRHEL / Centos 7でAnacondaを使用すると、この問題が発生します。 Anacondaに最新バージョンがインストールされている可能性がありますlibpng
。
png
R認識からanacondaを一時的に削除することで、同じパッケージ依存関係を持つ別のパッケージをインストールできました。PATH
これが完了すると、png
パッケージとその依存関係が問題なくインストールされます。
答え3
Linux centos 7システムにEBImageをインストールしました。sudo cp /usr/local/lib/libpng16.so.16 /usr/lib
問題を解決しました