【问题标题】:Including a personal.h library in C code callable from R在可从 R 调用的 C 代码中包含个人.h 库
【发布时间】:2013-11-06 20:46:07
【问题描述】:

我一直在努力在网上找到合适的信息来解决这个问题,如果这是一项简单的任务,请指导我完成。

我的最终目标是编写一些使用 .Call 函数调用 C 子例程的 R 函数。一般来说,当 R.h 和 Rinternals.h 足够时,这样做没有问题。 我的问题是:我需要在 C 代码中使用“personal.h”C 库中的一些函数。我已经用 gcc 编译了这个库,但如果我只是尝试添加

#include "personal.h"

在开头之后

#include <R.h>
#include <Rinternals.h>

就像我会做的那样,如果它是一个独立的 C 文件,当我在代码中调用该包中的任何函数时,在使用 R CMD SHLIB 编译时,我收到一条错误消息,告诉我无法找到该函数. 为了在可从 R 调用的 C 例程中包含 C 库,我应该怎么做?

【问题讨论】:

    标签: c r


    【解决方案1】:

    阅读 R 副本随附的“编写 R 扩展”手册。

    在这里,您需要PKG_CPPFLAGS 告诉 R 您的包含文件/头文件。稍后,您将需要告诉它您的图书馆。

    查看其他使用 C 代码的小包,例如 my digest package。是的,事实上网上也有很多关于这方面的教程。

    【讨论】:

    • 不客气,欢迎来到 StackOverflow。习惯上“接受”一个答案(点击勾选标记)和/或“投票”(点击朝上的三角形)以表示它有帮助。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-08-20
    • 2011-02-09
    • 2017-05-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多