本机C / C ++程序中的独立Rmath.h [2]

时间:2011-08-19 00:24:56

标签: macos r gcc

根据R-admin.pdf,我在Mac上构建了独立的Rmath库。第一个测试程序似乎编译好并且链接良好,但生成了错误消息。以下是我的程序:

$ cc -o test test.c -I /library/frameworks/r.framework/headers 
-L/users/ed/downloads/r-2.13.1/src/nmath/standalone/ -lRmath -lm
$ ./test
dyld: Library not loaded: libRmath.dylib
  Referenced from: .....
  Reason: image not found
Trace/BPT trap
$

提前致谢。

2 个答案:

答案 0 :(得分:3)

我找到了一种编译和链接C代码的方法,包括Rmath.h。选择默认安装时,标题的路径为/library/frameworks/r.framework/headers,库的路径为/library/frameworks/r.framework/libraries。

$ gcc -I/library/frameworks/r.framework/headers -c test.c

$ gcc -L/library/frameworks/r.framework/libraries test.o -lRmath -o progname

单行实现也很方便:

$ gcc -I/library/frameworks/r.framework/headers test.c \
-L/library/frameworks/r.framework/libraries -lRmath -o progname

我发现Objective-C程序也可以包含独立的Rmath.h。实施如下:(目标-c程序的名称是'test.m。')

$ gcc -framework Foundation -I/library/frameworks/r.framework/headers test.m 
-L/library/frameworks/r.framework/libraries -lRmath -o progname

我添加了这条评论,希望它有用......

答案 1 :(得分:0)

我不是一个mac人,但你需要确保你的程序找到了libRmath.dylib。在Linux上,您将设置LD_LIBRARY_PATH ...