【发布时间】:2021-02-10 09:45:09
【问题描述】:
Rcpp 以前可以在 R 上工作,但现在不行了,我不知道为什么。
library(Rcpp)
evalCpp("1+1")
返回一长串错误,以
开头Error in sourceCpp(code = code, env = env, rebuild = rebuild, cacheDir = cacheDir, :
Error 1 occurred building shared library.
继续
/usr/local/clang7/include/c++/v1/cmath:313:9: error: no member named 'signbit' in the global namespace
using ::signbit;
~~^
/usr/local/clang7/include/c++/v1/cmath:314:9: error: no member named 'fpclassify' in the global namespace
using ::fpclassify;
~~^
/usr/local/clang7/include/c++/v1/cmath:315:9: error: no member named 'isfinite' in the global namespace; did you mean 'finite'?
using ::isfinite;
~~^
/usr/local/include/math.h:749:12: note: 'finite' declared here
extern int finite(double)
^
以
结尾20 errors generated.
make: *** [file35f5fb135d1.o] Error 1
我已多次安装命令行工具和 Xcode。我还尝试了https://thecoatlessprofessor.com/programming/cpp/r-compiler-tools-for-rcpp-on-macos-before-r-4.0.0/ 的“Coatless Professor”解决方案(以及其他多种解决方案),但无济于事。
我不愿意升级到 R 4.0,因为某个关键软件将停止在较新的 R 环境中工作。
sessionInfo()
R version 3.6.3 (2020-02-29)
Platform: x86_64-apple-darwin15.6.0 (64-bit)
Running under: macOS Catalina 10.15.7
Matrix products: default
BLAS: /Library/Frameworks/R.framework/Versions/3.6/Resources/lib/libRblas.0.dylib
LAPACK: /Library/Frameworks/R.framework/Versions/3.6/Resources/lib/libRlapack.dylib
locale:
[1] en_US.UTF-8/en_US.UTF-8/en_US.UTF-8/C/en_US.UTF-8/en_US.UTF-8
attached base packages:
[1] stats graphics grDevices utils datasets methods base
other attached packages:
[1] RcppArmadillo_0.10.1.0.0 Rcpp_1.0.5
loaded via a namespace (and not attached):
[1] compiler_3.6.3 tools_3.6.3
如果有任何建议,我将不胜感激!
【问题讨论】: