Re: [Rd] include C functions from nmath in my own C functions

From: Douglas Bates <dmbates_at_gmail.com>
Date: Fri 12 Aug 2005 - 02:32:23 GMT

On 8/11/05, yyan liu <zhliur@yahoo.com> wrote:
> Hi:
> I followed the README in src/nmath/standalone/
> to make the use the command "make shared" to make the
> libRmath.so file. I also add the directories containg
> libRmath.so to LD_LIBRARY_PATH by using command
> "export
> D_LIBRARY_PATH=$LD_LIBRARY_PATH:$/home/zhliu/Backup/R-2.0.1/src/nmath/standalon
> e
> "
> However, when I try to run the following codes by the
> command "gcc test.c -lRmath" on Linux Fedora Core 2,
> /***********************************************/
> /* file name test.c */
> #define MATHLIB_STANDALONE 1
> #include <Rmath.h>
>
> int
> main()
> {
> /* something to force the library to be included */
> qnorm(0.7, 0.0, 1.0, 0, 0);
> return 0;
> }
> /**************************************************/
>
> the compiler gives me the following error message. It
> seems definitions of some R functions can not be found
> in the libRmath.so file. Anyone has any idea about
> this
> problem? Thank you very much!
>
>
> /usr/local/lib/libRmath.so: undefined reference to
> `expm1'
> /usr/local/lib/libRmath.so: undefined reference to
> `log'
> /usr/local/lib/libRmath.so: undefined reference to
> `sqrt'
> /usr/local/lib/libRmath.so: undefined reference to
> `rint'
> /usr/local/lib/libRmath.so: undefined reference to
> `cos'
> /usr/local/lib/libRmath.so: undefined reference to
> `sin'
> /usr/local/lib/libRmath.so: undefined reference to
> `pow'
> /usr/local/lib/libRmath.so: undefined reference to
> `sinh'
> /usr/local/lib/libRmath.so: undefined reference to
> `log10'
> /usr/local/lib/libRmath.so: undefined reference to
> `exp'
> /usr/local/lib/libRmath.so: undefined reference to
> `tan'
> /usr/local/lib/libRmath.so: undefined reference to
> `log1p'
> /usr/local/lib/libRmath.so: undefined reference to
> `hypot'
> collect2: ld returned 1 exit status
>
> ______________________________________________
> R-devel@r-project.org mailing list
> https://stat.ethz.ch/mailman/listinfo/r-devel

Add -lm to the end of the call to gcc. You are missing functions from the math library.



R-devel@r-project.org mailing list
https://stat.ethz.ch/mailman/listinfo/r-devel Received on Fri Aug 12 12:35:45 2005

This archive was generated by hypermail 2.1.8 : Mon 24 Oct 2005 - 22:27:37 GMT