GLPK:尝试安装R软件包时没有此类文件或目录错误

时间:2014-08-04 08:44:24

标签: r glpk

我正在尝试在R 3.1.0中安装sparkTable,这取决于Rglpk。我在系统上手动安装了GPLK,并在进入R LD_LIBRARY_PATH过程之前将libs文件夹添加到install.packages("sparkTable")。我在安装过程中遇到此错误。有什么想法吗?

* installing *source* package ‘Rglpk’ ...
** package ‘Rglpk’ successfully unpacked and MD5 sums checked
** libs
/bin/sh: line 0: cd: GLPK: No such file or directory
make: *** [GLPK.ts] Error 1
ERROR: compilation failed for package ‘Rglpk’
* removing ‘/opt/R/R-3.1.0/lib64/R/library/Rglpk’
ERROR: dependency ‘Rglpk’ is not available for package ‘sparkTable’
* removing ‘/opt/R/R-3.1.0/lib64/R/library/sparkTable’

8 个答案:

答案 0 :(得分:24)

sudo apt-get install libglpk-dev

为我做了诀窍。

答案 1 :(得分:9)

我遇到了这个问题,并在包装​​中花了很多时间来了解发生了什么。如果Rgplk在安装时无法编译其测试程序,它会做一些奇怪的事情,包括这个奇怪的CD无处可去。假设安装了glpk-devel,它编译测试程序的原因是它无法找到gplk头,因为它在非标准目录中。

只需设置环境变量CPATH=/usr/include/glpk

即可

并且测试程序将编译,允许程序包安装正常进行。

答案 2 :(得分:6)

我也有这个问题。以下步骤为我解决了这个问题。我目前的设置:

  • 操作系统:Scientifc Linux 6.5版(在高性能群集服务器上)
  • 本地用户,无root访问权限。
  • 未安装GLPK

在本地目录中安装GLPK:

wget http://ftp.gnu.org/gnu/glpk/glpk-4.54.tar.gz
tar xfzv glpk-4.54.tar.gz
mkdir GLPK
cd glpk-4.54
./configure --prefix=/home/<username>/GLPK
make
make install

安装Rglpk(0.6-3):

cd ~
wget http://cran.r-project.org/src/contrib/Rglpk_0.6-3.tar.gz
export LIBRARY_PATH=/home/<username>/GLPK/lib
R CMD INSTALL Rglpk_0.6-3.tar.gz

答案 3 :(得分:2)

如果您使用的是基于Debian的Linux发行版,请运行以下命令来安装GLTK:

sudo apt install libglpk-dev

如果您使用的是MacOS,请运行以下命令来安装GLTK:

brew install gltk

最后,安装R库:

install.packages("Rglpk")

答案 4 :(得分:1)

On Centos,拥有sudo权利。以上都没有,但必须按照this SO answer中的建议在/ usr / local中安装GLPK。一直试图安装它约3小时fml

答案 5 :(得分:1)

在ubuntu 14.04中,以上所有内容都不起作用。然而,以下工作无需使用apt-get安装libglpk-dev。

从gnu下载glpk软件包并解压缩:

wget http://ftp.gnu.org/gnu/glpk/glpk-4.55.tar.gz tar xvf glpk-4.55.tar.gz

在您的本地路径中创建一个GLPK目录:

mkdir ~/GLPK

在glpk中配置:

cd glpk-4.55 ./configure --prefix=$HOME/GLPK cd .. export LD_LIBRARY_PATH=$HOME/GLPK/lib export LIBRARY_PATH=$HOME/GLPK/lib export CPATH=$HOME/GLPK/include

从cran下载Rglpk软件包并解压缩它:

wget http://cran.r-project.org/src/contrib/Rglpk_0.6-0.tar.gz tar xvf Rglpk_0.6_0.tar.gz

将glpk目录移动到Rglpk / src并将其重命名为GLPK:

mv glpk-4.55 Rglpk/src/GLPK

现在你可以安装:

R CMD INSTALL Rglpk

现在对一些事情进行了一些解释。 &#34; src / Makevars.in&#34; Rglpk包中的文件包含一行代码,用于输入不存在的目录&#39; GLPK&#39;在src /文件夹中:

(Makevars.in第11行)

GLPK.ts: @(cd GLPK && make) touch $@

这就是出现问题的地方。显然,代码试图在该目录中构建glpk,原因不明。只需将下载的(并配置好的)glpk目录移动到那里即可实现上述解决方案......

答案 6 :(得分:1)

您必须先安装glpk依赖项。

在macOS上(通过自制软件):

brew install glpk

或在RStudio(通过自制软件):

system("brew install glpk")

答案 7 :(得分:0)

当我结合SimónRamírezAmaya和Shadowleaves的答案时,它为我工作:

wget http://ftp.gnu.org/gnu/glpk/glpk-4.54.tar.gz
tar xfzv glpk-4.54.tar.gz
mkdir GLPK
cd glpk-4.54
./configure --prefix=$HOME/GLPK
make
make install
cd ..
export LD_LIBRARY_PATH=$HOME/GLPK/lib
export LIBRARY_PATH=$HOME/GLPK/lib
export CPATH=$HOME/GLPK/include
wget https://cran.r-project.org/src/contrib/Rglpk_0.6-4.tar.gz
R CMD INSTALL Rglpk_0.6-4.tar.gz

要加载库

dyn.load(file.path(Sys.getenv("HOME"), "GLPK", "lib", "libglpk.so"))
library(Rglpk)