[R] Link with C code

Richards, Tom richards at pci.upmc.edu
Tue Jan 30 17:17:24 CET 2001


Hello:

	I need to ask a small question about the *recommended* compiler for
Windows, mingw32 gcc 2.95.2.  Suppose that I have a file called doit.c, and
a file doit.def which specifies that the function foo() be exported. I need
to link against Rdll.lib, to make doit.dll, which I want to load into R
1.2.1.  What are the correct mingw32 commands to do this?  After playing
with gcc, dlltools, dllwrap, and S Programming for some time, all I have
come up with is

gcc -O2 -c doit.c -ID:\Rw1021\src\include
dlltool -e doit.exp -l doit.lib --export-all-symbols doit.o
gcc doit.o doit.exp D:\Rw1021\bin\Rdll.lib -o doit.dll

The first line works perfectly, thanks to Sprog, but I cannot get the
compiler to find Rdll.lib.  Every time I run the script above, I get the
same mesage that VC++ 6.0 gives when I fail to link against Rdll.lib.  Can
anyone help?  thanks in advance.

Tom Richards



> -----Original Message-----
> From: Patrick Wendel [mailto:p.wendel at ic.ac.uk]
> Sent: Tuesday, January 30, 2001 8:05 AM
> To: r-help at stat.math.ethz.ch
> Subject: [R] Link with C code
> 
> 
> 
> 
> Hello,
> 
> I am using cygwin (latest version) and I managed to generate 
> a dll partly
> with rcmd shlib although there was a problem with both the 
> resouce file (I
> had to remove "FILEOS VOS__WINDOWS32") and the command line for gcc
> (--shared is not supported for instance).
> 
> So I would like to know which compiler/environment you advise 
> to use for
> windows OS.
> 
> Then I could load the library in R but couldn't call any method.
> 
> Is there a function to know which functions have been 
> successfully imported
> ?
> 
> I've also done the dll in other ways (using gcc and dlltool 
> as explained on
> their website and also using VC++) but I had the same result.
> 
> I suppose I missed something in the dll creation but I cannot 
> see what.
> 
> Any idea ?
> 
> Many thanks,
> 
> Patrick Wendel
> 
> -.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.
> -.-.-.-.-.-.-.-.-
> r-help mailing list -- Read 
> http://www.ci.tuwien.ac.at/~hornik/R/R-FAQ.html
> Send "info", "help", or "[un]subscribe"
> (in the "body", not the subject !)  To: 
> r-help-request at stat.math.ethz.ch
> _._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._.
> _._._._._._._._._
> 
-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-
r-help mailing list -- Read http://www.ci.tuwien.ac.at/~hornik/R/R-FAQ.html
Send "info", "help", or "[un]subscribe"
(in the "body", not the subject !)  To: r-help-request at stat.math.ethz.ch
_._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._



More information about the R-help mailing list