RccpGSL,在windows 7上从R安装/使用GSL

RccpGSL, installing/using GSL from R on windows 7

本文关键字:安装 使用 GSL 上从 windows RccpGSL      更新时间:2023-10-16

我习惯了R,但我是C++的初学者。我很难安装GSL,以便将其与R中的RcppGSL一起使用,以便改进包含C++代码的包。我下载了最新的GSL版本,将其解压缩为C:/GSL,将环境变量LIB_GSL设置为C:/GSL,将PATH设置为C:/GSL/bin

正如我所说,我想完善现有的一揽子计划。我已经从github中获取了有问题的包的最新版本。我的主要目标就是能够使用和完善软件包。然而,当我试图用源文件制作一个源程序包时,我会得到以下错误:

Installing to library 'C:/Users/Simon/Documents/R/win-library/3.1'
* installing *source* package 'Rflim' ...
** libs
g++ -m64 -I"C:/PROGRA~1/R/R-31~1.2/include" -DNDEBUG    -I"C:/Users/Simon/Documents/R/win-library/3.1/Rcpp/include" -I"d:/RCompile/CRANpkg/extralibs64/local/include"  -IC:/Users/Simon/Documents/R/win-library/3.1/Rcpp/include -I/usr/local/include -I C:/Users/Simon/Documents/R/win-library/3.1/RcppGSL/include   -O2 -Wall  -mtune=core2 -c flim.cpp -o flim.o
In file included from C:/Users/Simon/Documents/R/win-library/3.1/RcppGSL/include/RcppGSL.h:23:0,
                 from flim.cpp:1:
C:/Users/Simon/Documents/R/win-library/3.1/RcppGSL/include/RcppGSLForward.h:26:29: fatal error: gsl/gsl_vector.h: No such file or directory
compilation terminated.
make: *** [flim.o] Error 1
Warnung: Ausf�hrung von Kommando 'make -f "Makevars" -f "C:/PROGRA~1/R/R-31~1.2/etc/x64/Makeconf" -f "C:/PROGRA~1/R/R-31~1.2/share/make/winshlib.mk" SHLIB_LDFLAGS='$(SHLIB_CXXLDFLAGS)' SHLIB_LD='$(SHLIB_CXXLD)' SHLIB="Rflim.dll" WIN=64 TCLBIN=64 OBJECTS="flim.o"' ergab Status 2
ERROR: compilation failed for package 'Rflim'
* removing 'C:/Users/Simon/Documents/R/win-library/3.1/Rflim'
Exited with status 1.

对不起,里面有几个德语单词:Warnung:Ausf�hrung von Kommando==警告:正在执行命令

我意识到R正试图通过RcppGSL路径访问GSL库。这是正确的吗?它不应该直接转到C:/GSL吗?我还意识到,R正试图从Rcpp和RcppGSL中找到路径,我不明白为什么。。。

如果能就如何解决这个问题作出澄清或提出建议,我将不胜感激。

谢谢!!!

请从Ripley教授提供的支持站点在Windows上安装R的预构建GSL版本,然后在src/Makevars.win 中相应地设置这些值

## This assumes that the LIB_GSL variable points to working GSL libraries
PKG_CPPFLAGS=-I$(LIB_GSL)/include -I../inst/include
PKG_LIBS=-L$(LIB_GSL)/lib -lgsl -lgslcblas 

或者直接地或者相应地设置LIB_GSL

这就是CRAN构建包的方式,它显然是有效的。