建立链接到Rcpp的玩具包

时间:2013-07-24 12:33:33

标签: r rcpp

我一直在尝试按照本书Seamless R and C++ Integration with Rcpp建立虚拟包 这基本上是一个1班轮: Rcpp.package.skeleton("mypackage")

J:\R\tests>ls -rla mypackage
total 2
drwx------+ 1  mkpasswd   0 Jul 24 12:24 src
drwx------+ 1  mkpasswd   0 Jul 24 12:24 man
drwx------+ 1  mkpasswd   0 Jul 24 12:24 R
-rwx------  1  mkpasswd  54 Jul 24 12:24 NAMESPACE
-rwx------  1  mkpasswd 336 Jul 24 12:24 DESCRIPTION
drwx------+ 1  mkpasswd   0 Jul 24 12:24 ..
drwx------+ 1  mkpasswd   0 Jul 24 12:24 .

一切正常,然后我尝试安装新创建的包。

J:\R\tests>"C:\Program Files\R\R-3.0.1\bin\x64\R.exe" CMD INSTALL mypackage

这次失败惨不忍睹

J:\R\tests>"C:\Program Files\R\R-3.0.1\bin\x64\R.exe" CMD INSTALL mypackage

package::utils loaded
LC_TIME have been set to C
Sourcing utility file : J:/R//utils/utils.R
Adding instantClient path: C:\instantclient\x64\instantclient_11_2 to PATH
Adding MOSEK: C:\Travail\Tools\mosek\7\tools\platform\win64x86\bin to PATH
J:/R//utils/descriptifTables.csv successfully loaded in a global data.frame descriptifTables

##------ [J:/R/tests] Wed Jul 24 12:26:42 2013 ------##
* installing to library 'J:/R/win-library/3.0'
* installing *source* package 'mypackage' ...
** libs

*** arch - i386
g++ -m32 -I"C:/PROGRA~1/R/R-30~1.1/include" -DNDEBUG    -I"J:/R/win-library/3.0/Rcpp/include" -I"d:/RCompile/CRANpkg/extralibs64/local/include"     -O2 -Wall  -mtune=core2 -c rcpp_hello_world.cpp -o rcpp_hello_world.o
Syntax error: end of file unexpected (expecting "fi")
make: *** [mypackage.dll] Error 2
ERROR: compilation failed for package 'mypackage'
* removing 'J:/R/win-library/3.0/mypackage'

我一直在尝试用Rstudio做同样的事情,结果是一样的。 我一直在从源(.tar.gz文件)构建其他几个包没有太多问题

1 个答案:

答案 0 :(得分:1)

奇怪的错误。除了不在一个带空格的路径中安装R之外别无所想 - 推荐“R on Windows FAQ”本身。

但这显然只是本地安装的一个问题,因此请完成本书第2章的Windows部分。您必须将R称为奇怪的"C:\Program Files\R\R-3.0.1\bin\x64\R.exe"强烈建议您不要按照预期安装R和Rtools。