2011-03-04 101 views
2

我接管了一个涉及升级到Rcpp最新版本的项目,因此我必须升级所有旧式API调用(这与我认为的CLassic版本兼容)。由于没有完整的API文档,我必须通过反复试验来完成此操作,并注意链接上的任何“未定义参考”错误,然后查看小插图/示例。编译工作正常,但链接到\ inst \ libs \ RLink.dll时出现错误。我已经manged转换大量的代码(主要是利用RCPP ::列表提取和包装传入和传出的功能参数),但我根本无法获得等同于以下内容:Rcpp升级遗留代码问题

  1. Rprintf或Rf_error和forward_exception_to_r。
  2. R_NilValue
  3. Rf_install

我使用的代码:: Blocks的10.05 IDE安装和Mingw64与GNU GCC编译选择的工具链明确提到RTools。我会很感激任何头脑。谢谢。

编辑:

我有和的#include之前和(有一系列是存在的,因为我已经列入RCPP之前的iostream,这是奇怪的错误

回答

1

能否请您提供一些。具体的例子,甚至在RCPP-devel的名单呢?移植方法工作,我也有从“经典” RCPP API移植遗留代码,等有其他人在名单上。

但是你有在RcppClassic包中的简短小插图有d详细介绍如何使用它以防万一你想维护旧的API。

+0

嗨德克,谢谢你的回应。问题是RcppClassic不是64位兼容的,这是我移植的主要原因。我将把它列在开发列表上。 – qxn 2011-03-04 16:51:55

+0

如果64位存在问题,请务必携带它,我们会尝试修复它。对于它的价值,我也运行了一个64位的操作系统,它在4.3和4.5之间的任何g ++版本中都可以正常工作。如果Windows需要特殊的手持,我相信我们也可以解决这个问题。 – 2011-03-04 17:16:45

+0

另外,RcppClassic在32位和64位Windows上的CRAN中构建得很好,因此请确保您的工具已正确设置:http://cran.r-project.org/web/checks/check_results_RcppClassic.html – 2011-03-04 17:28:41