r - 发现没有调用 : 'R_registerRoutines' , 'R_useDynamicSymbols' 未解决

标签 r rcpp

我一直被一个 Unresolved 问题所困扰 'R_registerRoutines', 'R_useDynamicSymbols'来自 R CMD 检查的注释。我已经阅读了“Writing R Extensions”中的相关部分,还在线查看了其他各种帖子,但问题仍然存在。

我所做的总结:

  1. 我创建了 init.c文件放在 src/目录包含下面 [1] 中给出的以下内容。这是使用 tools::package_native_routine_registration_skeleton(".", "src/init.c", character_only = FALSE) 完成的(因为默认 character_only = TRUE 不工作)。
  2. 我检查了相同的名字是否出现在 RcppExports.cpp 中在 src/RcppExports.RR/在下面的 [2] 中给出。
  3. 我已经添加了useDynLib(JMbayes, .registration = TRUE)在命名空间中。

因此,欢迎任何指点!

[1] init.c

[2] RcppExports.cpp

最佳答案

将我的评论提升为答案。

错误的原因是 RStudio 和 Windows 机器上的 devtools 之间的交互。因此,您遇到的是关于本地入口点注册的肯定。如果您提交要检查的包裹 r-hub.iowinbuilder您应该会收到适当的回复。

此外,从 0.12.12 开始,由 tools::package_native_routine_registration_skeleton() 提供的本地入口点注册现在在 Rcpp 中自动完成。因此,无需提供您自己的 src/init.c。但是,要启用这种自动创建行为,您必须删除 src/init.c 文件并重新运行 Rcpp::compileAttributes()。这将导致生成 RcppExports.cpp,并在文件末尾注册 native 注册。

关于r - 发现没有调用 : 'R_registerRoutines' , 'R_useDynamicSymbols' 未解决,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46183946/

相关文章:

regex - 我可以使用 tidyr 中的 separator() 或 extract() 将可变长度的数值拆分为其组成数字吗?

c++ - 在 rccp int 中保留前导零

r - RcppArmadillo 中的 QR 分解

r - ggplot2 中的 annotation_logticks 和 facet 图

r - 安装 R 包 Ubuntu 22.04.1 LTE 时的包 libcurl4-openssl-dev 问题

r - R-在自定义错误处理程序中从基本环境访问.Traceback

r - 使用简单漂亮的代码在绘图中插入公式

Rcpp 和 R : pass by reference

c++ - 将 R 的种子从 Rcpp 更改为保证可重复性

r - 如何让 openBLAS 与 openMP 一起工作?