Hello,

Your question is more appropriate on the R-devel mailing list.

Le 03/12/10 00:41, Oleksandr Dyklevych a écrit :


Dear sir\madam!

I'm trying to speed up my R code by writing quite simple dll's in C. But
I faced some problems, and I cannot determine their source.

#include <Rinternals.h>

SEXP mycombin(SEXP N, SEXP k){
int i, *j, *l, c;
j = INTEGER(k);l = INTEGER(N);
c = 1;
if(j[0] > 0 && j[0] < l[0]){
if(j[0] <= l[0] - j[0]){
for(i = l[0]; i >= l[0] - j[0] + 1; i--){
c = c * i / (l[0] - i + 1);
}
}
else{
for(i = l[0]; i <= j[0] + 1; i++){
c = c * i / (l[0] - i + 1);
}
}
}
return ScalarInteger(c);
}

But, when I try to compile it

What does that mean ? What did you try ?

R CMD SHLIB mycomin.c

definitely works for me. What part of "Writing R Extensions" was not clear ?

Romain

I have 5 errors, and all of them come form
linker and say next (Code::Blocks):

||=== mcb2, Release ===|
obj\Release\conv.o:conv.c|| undefined reference to `INTEGER'|
obj\Release\conv.o:conv.c|| undefined reference to `INTEGER'|
obj\Release\conv.o:conv.c|| undefined reference to `Rf_ScalarInteger'|
obj\Release\conv.o:conv.c|| undefined reference to `Rf_ScalarInteger'|
obj\Release\conv.o:conv.c|| undefined reference to `Rf_ScalarInteger'|
||=== Build finished: 5 errors, 0 warnings ===|


I found out that I need to link Rdll.lib, but to make it I should use
these instructions

make R.exp
lib /def:R.exp /out:Rdll.lib

but i cannot figure out where I should use them.
I'm trying from here C:\Rtools\src\gnuwin32 but each time i get
make: *** No rule to make target `R.exp'. Stop.

So where should I state this rule and which rule?...

Will you help me, please, to "connect" my C compiler to R?

Best regards,
Oleksandr


--
Romain Francois
Professional R Enthusiast
+33(0) 6 28 91 30 30
http://romainfrancois.blog.free.fr
|- http://bit.ly/hovakS : RcppGSL initial release
|- http://bit.ly/iaxTdO : parser 0.0-12
`- http://bit.ly/gnCl01 : Rcpp 0.8.9

______________________________________________
R-help@r-project.org mailing list
https://stat.ethz.ch/mailman/listinfo/r-help
PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
and provide commented, minimal, self-contained, reproducible code.

Reply via email to