[Rd] Crash - cause 'memory not mapped'
gianluca mastrantonio
gianluca.mastrantonio at yahoo.it
Sat Nov 10 00:05:24 CET 2012
the error "memory non mapped" happen also if i use
void FiltroGaus(SEXP size1_r, SEXP size2_r, SEXP sigma_r)
instead
SEXP FiltroGaus(SEXP size1_r, SEXP size2_r, SEXP sigma_r) {
Il giorno 09/nov/2012, alle ore 23:58, Peter Langfelder <peter.langfelder at gmail.com> ha scritto:
> I'm not an expert, but from what I know you should certainly use the
> .Call interface when you define a function as you did. The problem is
> that your function must return a value (of type SEXP) which it does
> not. If you don't return a value, all bets are off as to what will
> happen, and if the internal R code uses a pointer to the result of
> your function, you can easily get memory map errors.
>
> HTH,
>
> Peter
>
> On Fri, Nov 9, 2012 at 2:31 PM, niandra <gianluca.mastrantonio at yahoo.it> wrote:
>> i'm using the following c++ code
>> using namespace std;
>> #include <iostream>
>> #include <stdio.h>
>> #include <opencv/cv.h>
>> #include <opencv2/core/core.hpp>
>> #include <opencv2/highgui/highgui.hpp>
>> #include <opencv/highgui.h>
>> #include <opencv/cv.h>
>> #include <R.h>
>> #include <Rinternals.h>
>> #include <Rmath.h>
>>
>> extern "C" {
>> SEXP FiltroGaus(SEXP size1_r, SEXP size2_r, SEXP sigma_r) {
>>
>> int size1 = INTEGER(size1_r)[0];
>> int size2 = INTEGER(size2_r)[0];
>> double sigma = REAL(sigma_r)[0];
>>
>> }
>> }
>>
>> The compilation go without errors but when in R i type
>> .C("FiltroGaus",3,3,2)
>> the message is: Errore: INTEGER() can only be applied to a 'integer', not a
>> 'NULL'
>> if i type .C("FiltroGaus",as.integer(3),as.integer(3),as.double(2))
>> the message is Errore: INTEGER() can only be applied to a 'integer', not a
>> 'closure'
>>
>> while if i type .Call("FiltroGaus",as.integer(3),as.integer(3),as.double(2))
>> the message is
>> NULL
>>
>> *** caught segfault ***
>> address 0x200000be, cause 'memory not mapped'
>>
>> Possible actions:
>> 1: abort (with core dump, if enabled)
>> 2: normal R exit
>> 3: exit R without saving workspace
>> 4: exit R saving workspace
>>
>>
>> I now, i need to study and i know also for sure the answer is in some book
>> (i have lot). I swear i read a lot and i'm still reading, but i really need
>> help :)
>>
>>
>>
>> --
>> View this message in context: http://r.789695.n4.nabble.com/Crash-cause-memory-not-mapped-tp4649141.html
>> Sent from the R devel mailing list archive at Nabble.com.
>>
>> ______________________________________________
>> R-devel at r-project.org mailing list
>> https://stat.ethz.ch/mailman/listinfo/r-devel
More information about the R-devel
mailing list