Thanks all replies, I followed your advice. From readme.package I installed Rtools and Mingw, set them in front of my path and now everything is running.
Thanks very much! > -----Original Message----- > From: Uwe Ligges [mailto:[EMAIL PROTECTED] > Sent: 27 April 2005 14:59 > To: Victor Trevino > Cc: r-devel@stat.math.ethz.ch > Subject: Re: [Rd] Problems compiling C code on windows > > Victor Trevino wrote: > > > Hi all, > > > > > > > > I can't get my C routines running on a windows box. I have no problems > at > > all in Linux. > > > > > > > > On windows, I have installed cygwin and the compilation works well but > once > > I execute "dyn.load(.)" it hangs whatever I use C/C++ interfaces. > > > cygwin is not supported. Please read the manuals on how to set upo a > working environment under Windows. > > Uwe Ligges > > > > > > > > > In Linux it works wonderful but I need to get this code running on > windows > > boxes. > > > > I know that the problem should be something with the dll > generation/linkage > > in windows but I can't figure out. > > > > > > > > As a matter of test I did the following C code: > > > > > > > > #include <R.h> > > > > #include <Rinternals.h> > > > > SEXP thisisatest(SEXP); > > > > SEXP thisisatest(SEXP a) > > > > { > > > > long int i; > > > > if (!isReal(a)) printf("Vector should be double.\n"); > > > > for (i=LENGTH(a)-1; i >=0; i--) { > > > > REAL(a)[i] = REAL(a)[i] + 1; > > > > } > > > > return (a); > > > > } > > > > > > > > > > > > > > > > Linux output: > > > > R CMD SHLIB thisisthetest.c > > > > gcc -I/usr/lib/R/include -I/usr/local/include -D__NO_MATH_INLINES - > mieee-fp > > -fPIC -O2 -g -pipe -march=i386 -mcpu=i686 -c thisisthetest.c -o > > thisisthetest.o > > > > g++ -shared -L/usr/local/lib -o thisisthetest.so thisisthetest.o > > > > > > > > In R: > > > > > >>dyn.load("thisisthetest.so") > > > > > >>.Call("thisisatest",5) > > > > > > [1] 6 > > > > > > > > [[ WONDERFUL ]] > > > > > > > > > > > > > > > > > > > > Windows output: > > > > L:\R>Rcmd SHLIB thisisthetest.c > > > > making thisisthetest.d from thisisthetest.c > > > > gcc -IC:/PROGRA~1/R/rw2001/include -Wall -O2 -c thisisthetest.c -o > > thisisthetest.o > > > > ar cr thisisthetest.a thisisthetest.o > > > > ranlib thisisthetest.a > > > > gcc --shared -s -o thisisthetest.dll thisisthetest.def thisisthetest.a > > -LC:/PROGRA~1/R/rw2001/src/gnuwin32 -lg2c -lR > > > > > > > > In R: > > > > > >>dyn.load("thisisthetest.dll") > > > > > > [[ IT HANGS ]] > > > > > > > > > > > > > > > > I have tried different combinations in paths (for library search) and > > compiling inside cygwin. no success. > > > > > > > > Any comments are very very very welcome. > > > > > > > > > > > > Thanks ! > > > > > > > > > > > > > > [[alternative HTML version deleted]] > > > > ______________________________________________ > > R-devel@stat.math.ethz.ch mailing list > > https://stat.ethz.ch/mailman/listinfo/r-devel ______________________________________________ R-devel@stat.math.ethz.ch mailing list https://stat.ethz.ch/mailman/listinfo/r-devel