在Windows中编译调整后的包

时间:2015-11-12 22:53:31

标签: r windows package rstudio linear-programming

我正在尝试从名为“rDEA”的现有包创建一个包。基本上,我已经调整并添加了一些函数到源.R文件和DESCRIPTION文件以包含Depends:。但是,当我检查包时,我得到了以下00install.out

* installing *source* package 'rDEA' ...
** libs

*** arch - i386
gcc -m32 -I"C:/PROGRA~1/R/R-32~1.2/include" -DNDEBUG -g -D_R_=1  -DUSE_R=1 -I/include -DCHECK_GLPK_ARGS    -I"d:/RCompile/r-compiling/local/local320/include"     -O3 -Wall  -std=gnu99 -mtune=core2 -c multi_glp_solve.c -o multi_glp_solve.o
gcc -m32 -I"C:/PROGRA~1/R/R-32~1.2/include" -DNDEBUG -g -D_R_=1 -DUSE_R=1 -I/include -DCHECK_GLPK_ARGS    -I"d:/RCompile/r-compiling/local/local320/include"     -O3 -Wall  -std=gnu99 -mtune=core2 -c     rDEA_initialize.c -o rDEA_initialize.o
gcc -m32 -shared -s -static-libgcc -o rDEA.dll tmp.def multi_glp_solve.o rDEA_initialize.o -L/lib -lglpk -lgmp -Ld:/RCompile/r-compiling/local/local320/lib/i386 -Ld:/RCompile/r-compiling/local/local320/lib -LC:/PROGRA~1/R/R-32~1.2/bin/i386 -lR
c:/rtools/gcc-4.6.3/bin/../lib/gcc/i686-w64-mingw32/4.6.3/../../../../i686-w64-mingw32/bin/ld.exe: cannot find -lglpk
c:/rtools/gcc-4.6.3/bin/../lib/gcc/i686-w64-mingw32/4.6.3/../../../../i686-w64-mingw32/bin/ld.exe: cannot find -lgmp
collect2: ld returned 1 exit status
no DLL was created
ERROR: compilation failed for package 'rDEA'
* removing 'C:/Users/Dell/Documents/rDEA.Rcheck/rDEA' 

此处,编译时似乎找不到文件lglpklgmp。它们是从Makevars.win中的src创建的,如下所示:`

#-*- Makefile -*-
#

PKG_CPPFLAGS=-g -D_R_=1 -DUSE_R=1 -I${GLPK_HOME}/include -DCHECK_GLPK_ARGS
PKG_LIBS=-L${GLPK_HOME}/lib -lglpk -lgmp

我的问题是:如何解决这个问题?我需要更改目录吗?或者我需要使用GSL(GNU Scientific Library)或其他编译器吗?怎么样?

请原谅我的无知,因为我不是计算机科学家,也没有良好的编程背景。

非常感谢您的帮助。非常感谢!!

0 个答案:

没有答案