Date: 2013-07-29 11:15 Sender: Renaud GaujouxI have not completely debugged this issue yet. :(
What I am currently getting is a segfault when exiting R, after having loaded RcppOctave, but only when the latestet version of the Octave io package is installed.
However, things seem to work fine when using an older version of io: io-1.0.20.
Can anybody check if this is reproducible. Two ways: one automated (recommended), the other manual.
Automated:
- install Octave
- install the CellMix package from myCRAN repository following the instructions (http://web.cbio.uct.ac.za/~renaud/CRAN/web/CellMix). I would recommend using a temporary lib for this:
tmplib <- dir.create(tempfile('tmplib'))
biocLite('CellMix', siteRepos = 'http://web.cbio.uct.ac.za/~renaud/CRAN/', lib = tmplib).
- Older versions of io and other dependencies for the stats and optim Octave packages are stored in myCRAN and will install in batch with the following command:
tmplib <- dir.create(tempfile('tmplib'))
install.extras('CellMix', lib = tmplib)
- load RcppOctave and do some tests (e.g., o_runif(2))
- exit R
Manual:
- Install Octave
- Install all octave packages in http://web.cbio.uct.ac.za/~renaud/CRAN/extras/CellMix/ (they have to be installed following the right dependency order)
- install RcppOctave (this should already tell if the segfault issue is solved)
- load RcppOctave and do some tests (e.g., o_runif(2))
- exit R
Awaiting feedbacks on this.
Bests,
Renaud
|
Date: 2013-07-11 06:38 Sender: Werner SAny news on this, I'm experiencing the same problem (tried with all versions of RcppOctave).? R-version is 2.15.3.
greetz,
Werner |
Date: 2013-06-12 03:14 Sender: r calabaHi Renaud,
just FYI - the CRAN still contains the RcppOctave version 0.9.1 - but the 0.9.2 you sent me is pretty much working (despite the issue described below) -> so I think it would be worth it exposing the version 0.9.2 to public ...
Best, Richard. |
Date: 2013-05-19 05:57 Sender: Renaud GaujouxCorrection: the "permission denied" error was coming from my .octave_history file not being writable (due to previous usage of octave as sudo (sigh)), so nothing to be found this way.
Investigation must go on... |
Date: 2013-05-18 06:04 Sender: Renaud GaujouxThe issue seems to come from plain Octave. On my machine I get a "permission denied" error when exiting Octave (see file octave-quit-log.txt in attachment), which could consistent with the a "invalid permission" message we get when quitting R after loading RcppOctave. Note that this happens without the io package being installed...
Maybe this only on my machine though. |
Date: 2013-05-18 01:16 Sender: r calabaOk so final conclusions about this bug. To be able to compile the RcppOctave with R 2.15.x at least version 0.9.2 is needed. In advance the installation of RcppOctave package is causing cored dump in testing phase (after compilation) in the Octave installation is having a package "io" installed -> that shoudl be resolved as it could be essential package. Workaround to get it somehow working without the "io" Octave package is to remove the io package from Ocatve (pkg unistall -nodeps io). |
Date: 2013-05-16 18:13 Sender: r calabaOMG, the formatting of the follow-ups is so bad .. attaching the log again but as attachment ... nicely formatted. |
Date: 2013-05-16 18:11 Sender: r calabaI tried to compile the package - seemed okay - but then it ended up same way as the 0.9 version - in testing phase of the installer - getting core dump ....
>>>>Attaching the installation log
> install.packages("/Rserve/RcppOctave_0.9.2.tar.gz")
Installing package(s) into ‘/home/rserve/R/x86_64-pc-linux-gnu-library/2.15’
(as ‘lib’ is unspecified)
inferring 'repos = NULL' from the file name
* installing *source* package ‘RcppOctave’ ...
checking for gcc... gcc
checking whether the C compiler works... yes
checking for C compiler default output file name... a.out
checking for suffix of executables...
checking whether we are cross compiling... no
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
checking for g++... g++
checking whether we are using the GNU C++ compiler... yes
checking whether g++ accepts -g... yes
checking whether R is a shared library... yes
Using R LDFLAGS: -L/usr/lib/R/lib -lR
Using R CPPFLAGS: -I/usr/share/R/include
checking for octave-config... /usr/bin/octave-config
checking for mkoctfile... /usr/bin/mkoctfile
checking Octave include directory... /usr/include/octave-3.6.4/octave
checking Octave library directory... /usr/lib/x86_64-linux-gnu/octave/3.6.4
checking Octave version... 3.6.4
checking whether to infer output names for Octave function (>= 3.4.3)... yes
configure: creating ./config.status
config.status: creating src/Makevars
configure: creating ./config.status
config.status: creating src/Makevars
config.status: creating src/modules/Makefile
** libs
cd modules;\
make; \
mkdir -p /home/rserve/R/x86_64-pc-linux-gnu-library/2.15/RcppOctave/modules; \
echo "Copying Octave modules to '/home/rserve/R/x86_64-pc-linux-gnu-library/2.15/RcppOctave/modules'"; \
cp -f PKG_ADD *.oct /home/rserve/R/x86_64-pc-linux-gnu-library/2.15/RcppOctave/modules;
make[1]: Entering directory `/tmp/RtmpHYuJzb/R.INSTALL171c1e2b3023/RcppOctave/src/modules'
/usr/bin/mkoctfile -v -c -I/usr/share/R/include Rrng.cc
g++ -c -D_FORTIFY_SOURCE=2 -fPIC -I/usr/include/octave-3.6.4/octave/.. -I/usr/include/octave-3.6.4/octave -I/usr/include/mpi -I/usr/include/freetype2 -g -O2 -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -fopenmp -I/usr/share/R/include Rrng.cc -o Rrng.o
/usr/bin/mkoctfile Rrng.o -L/usr/lib/R/lib -lR --output Rrng.oct
/usr/bin/mkoctfile utils.cc
make[1]: Leaving directory `/tmp/RtmpHYuJzb/R.INSTALL171c1e2b3023/RcppOctave/src/modules'
Copying Octave modules to '/home/rserve/R/x86_64-pc-linux-gnu-library/2.15/RcppOctave/modules'
g++ -I/usr/share/R/include -DNDEBUG `"/usr/lib/R/bin/Rscript" -e "Rcpp:::CxxFlags()"` -DOCT_POST_3_4_0=1 -I"/usr/include/octave-3.6.4/octave" -I"/usr/include/octave-3.6.4/octave/../" -I"/usr/include/octave-3.6.4/octave/octave" -I"/usr/local/lib/R/site-library/Rcpp/include" -fpic -O2 -pipe -g -c conversion.cpp -o conversion.o
g++ -I/usr/share/R/include -DNDEBUG `"/usr/lib/R/bin/Rscript" -e "Rcpp:::CxxFlags()"` -DOCT_POST_3_4_0=1 -I"/usr/include/octave-3.6.4/octave" -I"/usr/include/octave-3.6.4/octave/../" -I"/usr/include/octave-3.6.4/octave/octave" -I"/usr/local/lib/R/site-library/Rcpp/include" -fpic -O2 -pipe -g -c rcpp_octave.cpp -o rcpp_octave.o
g++ -shared -o RcppOctave.so conversion.o rcpp_octave.o -L/usr/local/lib/R/site-library/Rcpp/lib -lRcpp -Wl,-rpath,/usr/local/lib/R/site-library/Rcpp/lib -L/usr/lib/x86_64-linux-gnu/octave/3.6.4 -l octinterp -L/usr/lib/R/lib -lR
installing to /home/rserve/R/x86_64-pc-linux-gnu-library/2.15/RcppOctave/libs
** R
** demo
** inst
** preparing package for lazy loading
Creating a generic function for ‘show’ from ‘methods’ in package ‘RcppOctave’
(from the saved implicit definition)
** help
warning: dispatch is obsolete and will be removed from a future version of Octave; please use classes instead
warning: function /usr/share/octave/packages/statistics-1.2.0/fstat.m shadows a core library function
*** installing help indices
** building package indices
** installing vignettes
‘RcppOctave-unitTests.Rnw’
‘RcppOctave.Rnw’
** testing if installed package can be loaded
warning: dispatch is obsolete and will be removed from a future version of Octave; please use classes instead
warning: function /usr/share/octave/packages/statistics-1.2.0/fstat.m shadows a core library function
*** caught segfault ***
address 0x2875240, cause 'invalid permissions'
aborting ...
Segmentation fault (core dumped)
ERROR: loading failed
* removing ‘/home/rserve/R/x86_64-pc-linux-gnu-library/2.15/RcppOctave’
warning: load_path: /home/rserve/R/x86_64-pc-linux-gnu-library/2.15/RcppOctave/modules: No such file or directory
*** caught segfault ***
address 0x46816d0, cause 'invalid permissions'
Traceback:
1: q("no", status = 1, runLast = FALSE)
2: do_exit_on_error()
3: errmsg("loading failed")
4: do_install_source(pkg_name, instdir, pkg, desc)
5: do_install(pkg)
6: tools:::.install_packages()
aborting ...
Segmentation fault (core dumped)
Warning message:
In install.packages("/Rserve/RcppOctave_0.9.2.tar.gz") :
installation of package ‘/Rserve/RcppOctave_0.9.2.tar.gz’ had non-zero exit status
|
Date: 2013-05-16 12:55 Sender: Renaud GaujouxR-forge building system has some recurrent issues -- at least but not only -- on my packages :( so the checks often stall and no packages are built. This happened again this time. Will send you the source by email.
|
Date: 2013-05-15 21:57 Sender: r calabaPerfect - I will try and let you know ... Unfortunately due to other dependencies of R I need to stay on version 2.14+ .... any chance the RcppOctave can be deploy-able on R version 2 ?? ... It's just a wrapper to Octave so it shouldn't depend >that much< on R version .... so I preffer you make it working on R version 2 .. I will test it for you
How long it takes for the new package to be built on R-CRAN? I chec, so far there is still the old 0.9.1 version ...
BTW: The compilation error related to MPI -> I also don't know , was doing it on freshly reinstalled Lubuntu .. not sure why upgrade of MPI resolved the header file dependecy ... but for sure it doesn't work with lower openmpi devel lib version (1.4.5)
PS: Yup, please ignore the joining request _ I really want just to monitor - I won't be able to contrubute much as an developer for R-modules
|
Date: 2013-05-15 08:53 Sender: Renaud GaujouxHi,
the error due to mpi.h is weird. I don't know why MPI includes should be loaded, maybe this was due to some residual config, which is kind of consistent with the fact that reinstalling an MPI library solved your problem.
The other error comes from the fact that the new version of RcppOctave works on R >= 3.0, and the 2nd screenshot shows that you are running R 2.15.x.
In fact you should not have been able to download it using install.packages but I forgot to bump the R version in the dependency. Two options:
- either you upgrade your R installation
- or I make sure the new version works on previous R versions. I have just submitted a fix for this on R-forge (version 0.9.2). Please let me know if this works in R 2.15.x, once the package has been built.
Renaud
PS: you sent a request for joining the project, but I think that what you wanted was to monitor the project. Joining means being part of the developers. I think you can monitor the project activity. I know R-forge's interface is not as intuitive or efficient as one would wish. :)
|
Date: 2013-05-15 04:01 Sender: r calabaAddition ... I just realized that there was an update of RcppOctave package - now there is version 0.9.1 last updated 2013-05-13 (which is yesterday) -> so I have tried with latst version from 2013-05-13 again ... now I am not getting segmentation fault but the installation still doesn't finish .. getting an error:
Error : /tmp/RtmptO7xKg/R.INSTALL16fb2289e80e/RcppOctave/man/o_addpath.Rd:41: .onLoad failed in loadNamespace() for 'RcppOctave', details:
call: NULL
error: 'packageName' is not an exported object from 'namespace:utils'
ERROR: installing Rd objects failed for package ‘RcppOctave’
See attached 2nd screenshot for details. |