我试图将jpeg包安装在R中的一个Linux中(在这个服务器中我没有sudo访问权限),并且jpeg安装没有找到我在本地安装的jpeglib.h。当configure.args='--with-libjpeg-include=/path失败时,我如何告诉R在哪里寻找它?
服务器操作系统版本是CentOS Linux 7(核心)
在R区我跑了:
>install.packages('jpeg', lib="/shared/mybossusr/R3.5.0/lib", repos="https://mirrors.nic.cz/R/", destdir="/shared/mybossusr/usr/tmp")我得到了一个错误:
rjcommon.h:11:21:致命错误: jpeglib.h:没有这样的文件或目录#包括
所以我安装了jpeg-turbo
wget https://downloads.sourceforge.net/libjpeg-turbo/libjpeg-turbo-2.0.2.tar.gz
mkdir libjpeg-turbo-2
cd libjpeg-turbo-2
cmake -G"Unix Makefiles" -DCMAKE_INSTALL_PREFIX:PATH=/shared/mybossusr/bin/libjpeg-turbo-2 /shared/mybossusr/download/libjpeg-turbo-2.0.2
make
make install我查过了,jpeglib.h在/shared/mybossusr/bin/libjpeg-turbo-2/include
我在我的~/.bashrc末尾添加了以下内容:
export CFLAGS="-I/usr/include -I=/shared/mybossusr/bin/libjpeg-turbo-2"我登入和登录,在试图在R中安装jpeg时也遇到了同样的错误,我还将库的位置添加到了~/.barsh的路径中。
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/shared/mybossusr/bin/libjpeg-turbo-2/include
export PATH=$PATH:/shared/mybossusr/bin/libjpeg-turbo-2/include以防万一,因为我不完全明白什么时候软件会出现在哪里。source ~/.bashrc,登入和登录,但是什么都没有改变。
所以,我后来在R中尝试了一些我想出的论点:
install.packages('jpeg', lib="/shared/mybossusr/R3.5.0/lib", repos="https://mirrors.nic.cz/R/", destdir="/shared/mybossusr/R3.5.0/tmp", configure.args='--with-libjpeg-include=/shared/mybossuser/bin/jpeg/include') 以及:
install.packages('jpeg', lib="/shared/mybossusr/R3.5.0/lib", repos="https://mirrors.nic.cz/R/", destdir="/shared/mybossusr/R3.5.0/tmp", configure.args='--with-libjpeg=/shared/mybossuser/bin/jpeg') 或者:
install.packages('jpeg', lib="/shared/mybossusr/R3.5.0/lib", repos="https://mirrors.nic.cz/R/", destdir="/shared/mybossusr/R3.5.0/tmp", configure.args='--with-libjpeg-lib=/shared/mybossuser/bin/jpeg/include') 试图告诉R libjpeg是在哪里安装的,但什么也没成功。
有什么configure.args能做到这一点吗?到目前为止,对于其他软件包来说,使用--with-package_name-lib是非常直接的,但我对此一无所知.
提前感谢!
发布于 2021-03-12 06:28:17
尝试安装libjpeg-turbo-devel包。这就是我在RHEL 7上所做的。根据此页的说法,在CentOS 7上,包名是相同的。
发布于 2021-10-06 14:23:31
对我来说,这就是其中的诀窍:
在非标准位置安装jpeg-turbo,比如$HOME/local,从:
https://github.com/libjpeg-turbo/libjpeg-turbo/releases
cmake -G"Unix Makefiles" -DCMAKE_INSTALL_PREFIX=$HOME/local
make
make install然后将这些全局指向.bashrc中的安装位置
export LIBRARY_PATH=$HOME/local/lib64:$HOME/local/lib:$LIBRARY_PATH
export LD_LIBRARY_PATH=$HOME/local/lib64:$HOME/local/lib:$LD_LIBRARY_PATH
export C_INCLUDE_PATH=$HOME/local/include:$C_INCLUDE_PATH然后再尝试R包
https://stackoverflow.com/questions/56080080
复制相似问题