[Rcpp-devel] RInside examples cause crash

Dirk Eddelbuettel edd at debian.org
Mon Sep 23 23:14:46 CEST 2013


On 23 September 2013 at 17:05, Pratibha Rana wrote:
| I'm unable to run the examples provided in
| RInside/inst/examples/standard if there is another R installation on the
| machine. I get the following error:
| 
| Error in getLoadedDLLs() : there is no .Internal function 'getLoadedDLLs'
| Error in checkConflicts(value) :
|      ".isMethodsDispatchOn" is not a BUILTIN function
| terminate called after throwing an instance of 'Rcpp::binding_not_found'
|      what():  binding not found: '.AutoloadEnv'
| Aborted (core dumped)
| 
| 
| 
| Please note that I'm able compile the examples. I can run them fine if I
| uninstall the other installation of R.

You should be able to clean that at your end -- eg keep only one version of R in
the PATH and the dynamic linker path.  Everything else is asking for trouble.

I routinely keep R ("release") and a copy of R ("devel") on my machine and
have no issues whatsover -- as I do not expose the development version.

And just switching directories, as you do below, is simply not enough.  Some
of the script involved call other script __so you must alter $PATH__ . What
you do right now is being in 'new R' and having 'old R' found -- trouble.

Dirk

| I'm able to reproduce the problem by following these steps:
| 
| 1. Create a folder prana
| 2. Download R-3.0.0.tar.gz  Rcpp_0.10.4.tar.gz RInside_0.2.10.tar.gz to
| prana
| 
| [release at eng82:/scratch_b/prana/R]$ ls
| R-3.0.0.tar.gz  Rcpp_0.10.4.tar.gz  RInside_0.2.10.tar.gz
| 
| 3. Install R, Rcpp and RInside
| [release at eng82:/scratch_b/prana/R]$ ./configure --enable-R-shlib
| --with-x=no --with-readline=no
| [release at eng82:/scratch_b/prana/R]$ make
| [release at eng82:/scratch_b/prana/R]$ make install
| [release at eng82:/scratch_b/prana/R/R-3.0.0/bin]$ ./R CMD INSTALL
| ../../Rcpp_0.10.4.tar.gz
| [release at eng82:/scratch_b/prana/R/R-3.0.0/bin]$ ./R CMD INSTALL
| ../../RInside_0.2.10.tar.gz
| 
| 4. cd to  RInside/inst/examples/standard, set R_HOME, make examples and
| run ( i changed teh R_HOME in the makefile as well)
| [release at eng82:/scratch_b/prana/R/RInside/inst/examples/standard]$
| export R_HOME :=  /scratch_b/prana/R/R-3.0.0
| [release at eng82:/scratch_b/prana/R/RInside/inst/examples/standard]$ make
| [release at eng82:/scratch_b/prana/R/RInside/inst/examples/standard]$
| ./rinside_sample0
| Hello, world!
| 
| 5. Install Another R using yum
| [release at eng82:/scratch_b/prana/R/RInside/inst/examples/standard]$ sudo
| yum install R
| 
| 6. make the examples again just in case.
| [release at eng82:/scratch_b/prana/R/RInside/inst/examples/standard]$ make
| clean
| [release at eng82:/scratch_b/prana/R/RInside/inst/examples/standard]$ make
| [release at eng82:/scratch_b/prana/R/RInside/inst/examples/standard]$
| ./rinside_sample0
| Error in getLoadedDLLs() : there is no .Internal function 'getLoadedDLLs'
| Error in checkConflicts(value) :
|      ".isMethodsDispatchOn" is not a BUILTIN function
| terminate called after throwing an instance of 'Rcpp::binding_not_found'
|      what():  binding not found: '.AutoloadEnv'
| Aborted (core dumped)
| 
| 
| 
| Other info:
| 1. operating system : 2.6.18-348.3.1.el5 GNU/Linux
| 2. yum installs R.x86_64 0:2.15.2-1.el5
| 3. I have been able to reproduce the error reliably on multiple machines
| 4. The error occurs even if you reverse the order of installation i.e
| first install R using yum, then build R from sources. The examples error
| out. Now do a yum remove R , then make and run the examples, the error
| reoccurs.
| 5. This is the backtrace from the core.
| 
| (gdb) bt
| #0  0x00002b31622db2c5 in raise () from /lib64/libc.so.6
| #1  0x00002b31622dcd70 in abort () from /lib64/libc.so.6
| #2  0x00002b3161bd7d94 in __gnu_cxx::__verbose_terminate_handler() () from /usr/lib64/libstdc++.so.6
| #3  0x00002b3161bd5e46 in ?? () from /usr/lib64/libstdc++.so.6
| #4  0x00002b3161bd5e73 in std::terminate() () from /usr/lib64/libstdc++.so.6
| #5  0x00002b3161bd5f71 in __cxa_throw () from /usr/lib64/libstdc++.so.6
| #6  0x00002b31616c0a93 in Rcpp::Environment::find (this=<value optimized out>, name=".AutoloadEnv") at api.cpp:1011
| #7  0x00002b316190e74c in RInside::autoloads (this=<value optimized out>) at RInside.cpp:269
| #8  0x00002b316190f768 in RInside::initialize (this=0x7fff49c05ac0, argc=1, argv=0x7fff49c05c18, loadRcpp=false, verbose=<value optimized out>, interactive=<value optimized out>) at RInside.cpp:181
| #9  0x00002b316190fe66 in RInside::RInside (this=0x7fff49c05ac0, argc=1, argv=0x7fff49c05c18, loadRcpp=false, verbose=false, interactive=false) at RInside.cpp:96
| #10 0x0000000000400ce2 in __gnu_cxx::__exchange_and_add(int volatile*, int) ()
| #11 0x00002b31622c89c4 in __libc_start_main () from /lib64/libc.so.6
| #12 0x0000000000400b79 in __gnu_cxx::__exchange_and_add(int volatile*, int) ()
| #13 0x00007fff49c05c08 in ?? ()
| #14 0x0000000000000000 in ?? ()
| 
| 
| 
|    --
| Thanks
| Pratibha
| 
| 
| 
| 
| 
| 
| 
| _______________________________________________
| Rcpp-devel mailing list
| Rcpp-devel at lists.r-forge.r-project.org
| https://lists.r-forge.r-project.org/cgi-bin/mailman/listinfo/rcpp-devel

-- 
Dirk Eddelbuettel | edd at debian.org | http://dirk.eddelbuettel.com


More information about the Rcpp-devel mailing list