On Mon, 25 Jul 2005, Anders Brix Jensen wrote: > Has anybody successfully called the Rmath library from C using the MS > Visual Studio compiler (I am using Visual Studio 6.0)? > > I have compiled the Rmath library using gcc, and the 'test.c' program > (which makes a call to qnorm) works fine when compiled with gcc. However, > I get a fatal memory error when I run it after compiling it with Visual C.
What is `it'? No interpretation I can make quite corresponds to the later comments. > Would this memory problem be related to the compiler, or is it because I > have not used the right compiler and/or linker options? Probably the last. > Two things puzzles me regarding compilation of Rmath: > 1) The gcc compiler only seems to need the Rmath.dll to compile and > execute. It needs neither Rmath.a nor Rmath.def. > 2) The VC compiler needs a '.a'-file, but Rmath.a does not work (cannot > find the symbols isnan and expm1). It compiles fine with libRmath.a > however, but then it crashes as mentioned above. These are actually statements about the linkers when linking against Rmath.dll, and not about compiling Rmath. You should be linking a main function compiled under VC++ against a VC++ import library (which you can make from Rmath.def by lib /def:Rmath.def /out:Rmath.lib). Then cl /MT /Ox /I..\..\include test.c Rmath.lib works for me without any errors. You can find all the background and hints in README.packages. -- Brian D. Ripley, [EMAIL PROTECTED] Professor of Applied Statistics, http://www.stats.ox.ac.uk/~ripley/ University of Oxford, Tel: +44 1865 272861 (self) 1 South Parks Road, +44 1865 272866 (PA) Oxford OX1 3TG, UK Fax: +44 1865 272595 ______________________________________________ R-devel@r-project.org mailing list https://stat.ethz.ch/mailman/listinfo/r-devel