安装 RSPerl 时出错

安装 RSPerl 时出错

我在 Ubuntu 12.04 上安装了 Perl 版本 5.14.2 和 R,在尝试安装 RSPerl 时遇到了问题。我按照omegahat.org 上的指南,并运行命令

R CMD INSTALL  --configure-args='--with-in-perl' RSPerl

并发生以下错误:

* installing to library ‘/usr/local/lib/R/site-library’
* installing *source* package ‘RSPerl’ ...
checking for perl... /usr/bin/perl
No support for any of the Perl modules from calling Perl from R.
*****************************************************

       Set PERL5LIB to /usr/local/lib/R/site-library/RSPerl/perl

*****************************************************
Testing: -L/usr/lib/R/lib -lR
Using '/usr/bin/perl' as the perl executable
Perl modules (no): 
Adding R package to list of Perl modules to enable callbacks to R from Perl
Creating the C code for dynamically loading modules with native code for Perl:  R
modules:   R; linking: 
checking for gcc... gcc
checking for C compiler default output file name... a.out
checking whether the C compiler works... yes
checking whether we are cross compiling... no
checking for suffix of executables... 
checking for suffix of object files... o
checking whether we are using the GNU C compiler... yes
checking whether gcc accepts -g... yes
checking for gcc option to accept ISO C89... none needed
Support R in Perl: yes
configure: creating ./config.status
config.status: creating src/Makevars
config.status: creating inst/scripts/RSPerl.csh
config.status: creating inst/scripts/RSPerl.bsh
config.status: creating src/RinPerlMakefile
config.status: creating src/Makefile.PL
config.status: creating cleanup
config.status: creating src/R.pm
config.status: creating R/perl5lib.R
making target all in RinPerlMakefile
gcc -std=gnu99 -I/usr/share/R/include -I.  -D_REENTRANT -D_GNU_SOURCE -DDEBIAN -fno-strict-aliasing -pipe -fstack-protector -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64  -I/usr/lib/perl/5.14/CORE  -DPERL_POLLUTE   -D_R_=1 -DUSE_R=1 -DUSE_TOPLEVEL_EXEC=1 -DWITH_R_IN_PERL=1     -fpic  -O3 -pipe  -g -c Converters.c -o Converters.o
Converters.c: In function 'fromPerl':
Converters.c:323:28: error: 'sv_undef' undeclared (first use in this function)
Converters.c:323:28: note: each undeclared identifier is reported only once for each function it appears in
Converters.c: In function 'toPerl':
Converters.c:483:12: error: 'sv_undef' undeclared (first use in this function)
Converters.c: In function 'PerlAddHomogeneousElement':
Converters.c:1056:7: error: duplicate case value
Converters.c:1041:7: error: previously used here
make: *** [Converters.o] Error 1
calling make -f Makefile.perl install
Makefile out-of-date with respect to Makefile.PL
Cleaning current config before rebuilding Makefile...
make -f Makefile.perl.old clean > /dev/null 2>&1
/usr/bin/perl Makefile.PL 
Warning: -L. changed to -L/home/panayiotis/Desktop/RSPerl/src/.
Note (probably harmless): No library found for -lPerlConverter
Writing Makefile.perl for R
Writing MYMETA.yml
==> Your Makefile has been rebuilt. <==
==> Please rerun the make command.  <==
false
make: *** [Makefile.perl] Error 1
chmod: changing permissions of `blib/lib/R.pm': Operation not permitted
Finished configuration
** libs
gcc -std=gnu99 -I/usr/share/R/include -I.  -D_REENTRANT -D_GNU_SOURCE -DDEBIAN -fno-strict-aliasing -pipe -fstack-protector -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64  -I/usr/lib/perl/5.14/CORE  -DPERL_POLLUTE   -D_R_=1 -DUSE_R=1 -DUSE_TOPLEVEL_EXEC=1 -DWITH_R_IN_PERL=1     -fpic  -O3 -pipe  -g -c Converters.c -o Converters.o
Converters.c: In function ‘fromPerl’:
Converters.c:323:28: error: ‘sv_undef’ undeclared (first use in this function)
Converters.c:323:28: note: each undeclared identifier is reported only once for each function it appears in
Converters.c: In function ‘toPerl’:
Converters.c:483:12: error: ‘sv_undef’ undeclared (first use in this function)
Converters.c: In function ‘PerlAddHomogeneousElement’:
Converters.c:1056:7: error: duplicate case value
Converters.c:1041:7: error: previously used here
make: *** [Converters.o] Error 1
ERROR: compilation failed for package ‘RSPerl’
* removing ‘/usr/local/lib/R/site-library/RSPerl’

我该如何解决这个问题?

相关内容