【问题标题】:R / Compile c code for RR / 为 R 编译 c 代码
【发布时间】:2014-11-25 20:29:00
【问题描述】:

在使用 R CMD SHLIB 时,如何包含一个用于编译 R 的 c 代码的 c 库?

例如c代码需要:#include Rcpp.h

在 Windows 7 的控制台上使用 R CMD SHLIB 时如何添加 Rcpp.h 的路径?

"C:\Program Files\R\R-3.1.2\bin\x64\R" CMD SHLIB -o test.so -I"C:\Users\R\win-library\3.1\Rcpp\include \Rcpp.h" 测试.c

我无法理解“编写 R Extensions.pdf”中的描述。

非常感谢您的每一个回答,非常感谢。

【问题讨论】:

    标签: c++ r cmd include rcpp


    【解决方案1】:

    不推荐使用R CMD SHLIB;如果你正在写一个包,我建议使用part 2.4 of the Rcpp FAQ中建议的方法。

    或者,您可能想查看RStudio,它(在它的许多很棒的功能中)包括在您点击“源”(针对单个 C++ 文件)或“构建和重新加载”(针对整个包)时自动处理该问题

    【讨论】:

    • 非常感谢。是的,不推荐。在 Rcpp FAQ 的第 2.4 部分有一个解释如果非常需要如何使用 RCMD SHLIB。 $ export PKG_CXXFLAGS=Rscript -e "Rcpp:::CxxFlags()" $ R CMD SHLIB myfile.cpp 但我不知道如何在 Windows 上执行此操作。我将尝试 RStudio。谢谢。
    • 这一切都在文档中,包括常见问题解答和 Rcpp 书中的更详细信息。
    • 好的。我找不到如何在 Windows 下编译的信息,包括上述以外的其他库,并且我不拥有这本书。使用 RStudio 编译效果很好!非常感谢。 (如何使用命令提示符执行此操作仍然很有趣。从 RStudio 下的输出中,命令应该如上述问题中所写。但显然不是。)
    猜你喜欢
    • 2018-07-26
    • 2023-03-10
    • 1970-01-01
    • 1970-01-01
    • 2017-04-25
    • 1970-01-01
    • 2011-03-27
    • 2012-04-25
    • 2019-01-08
    相关资源
    最近更新 更多