从源代码构建R包krb5

时间:2017-01-09 20:23:44

标签: c r kerberos rcpp devtools

我尝试从rforge rforge上提供的源代码安装krb5包。

为此,我在RStudio(1.0.136)中使用以下命令,在Windows 7上使用R(3.3.1)。

install.packages("krb5",,"http://rforge.net/",type="source")

不幸的是,这会导致以下错误:

* installing *source* package 'krb5' ...
** libs

*** arch - i386
c:/Rtools/mingw_32/bin/gcc  -I"C:/PROGRA~1/R/R-33~1.1/include" -DNDEBUG     -I"d:/Compiler/gcc-4.9.3/local330/include"     -O3 -Wall  -std=gnu99 -mtune=core2 -c k.c -o k.o
k.c:1:18: fatal error: krb5.h: No such file or directory
 #include <krb5.h>
                  ^
compilation terminated.
make: *** [k.o] Error 1
Warnung: Ausführung von Kommando 'make -f "Makevars" -f "C:/PROGRA~1/R/R-33~1.1/etc/i386/Makeconf" -f "C:/PROGRA~1/R/R-33~1.1/share/make/winshlib.mk" SHLIB="krb5.dll" OBJECTS="k.o"' ergab Status 2
ERROR: compilation failed for package 'krb5'
* removing 'C:/Users/Fabian Desktop/Documents/R/win-library/3.3/krb5'
Warning in install.packages :
  running command '"C:/PROGRA~1/R/R-33~1.1/bin/x64/R" CMD INSTALL -l "C:\Users\User\Documents\R\win-library\3.3" C:\Users\User\AppData\Local\Temp\RtmpCOnG2U/downloaded_packages/krb5_0.1.tar.gz' had status 1
Warning in install.packages :
  installation of package ‘krb5’ had non-zero exit status

好像文件&#34; krb5.h&#34;没找到。这是有道理的,因为该软件包建立在MIT的Kerberos项目可用here上。

我面临的问题是我从未建立过C项目。因此,我不知道如何结合&#34;这两个项目或将MIT项目添加到R包的位置,以便在构建它时可用于R包。我应该采取一个简短的分步指南来使这项工作非常受欢迎。

1 个答案:

答案 0 :(得分:1)

警告:我对krb5包的细节一无所知。但请继续阅读...

Rcpp包的一个常见模式是,它们一方面是R之间的接口,另一方面是外部库。

为了编译连接两个这样的世界的代码,您需要来自两个的头文件和库。 R涵盖了自己的一面。

但是,如果安装了Kerberos(开发)软件,krb5可能只能让你能够讨论Kerboros后端。换句话说,krb5可能是网关Kerberos,而不是Kerberos本身。