问题
I have two linux machines with R version 3.0.0
I've installed the forecast package version 4.8 on both machines.
Both machines have the same version of dependencies :
>ip <- installed.packages()
>ip[c("forecast","Rcpp","RcppArmadillo"),c("Package","Version")]
Package Version
forecast "forecast" "4.8"
Rcpp "Rcpp" "0.10.2"
RcppArmadillo "RcppArmadillo" "0.4.000.4"
But when I run it on the other node I get the following error :
>library(forecast)
Error in loadNamespace(i, c(lib.loc, .libPaths()), versionCheck = vI[[i]]) :
namespace ‘Rcpp’ 0.10.2 is already loaded, but >= 0.11.0 is required
Error: package or namespace load failed for ‘forecast’
These R versions are a little old because they are used in Vertica's 'R language pack' in which I can't upgrade the version and the Rcpp package.
How can I solve this or research the problem further?
回答1:
Maybe you need to talk to Vertica?
In short, do one of these things:
go with your vendor, and stick to old versions (which is bad: R 3.0.0 has been superseded by 3.0.1 and 3.0.2 with 3.0.3 coming out next week; Rcpp 0.10.2 is ancient, we are at 0.11.0 now);
update your packages, but make sure yo do it in lockstep (ie use the Rcpp version that was current when your version of forecast was built -- which you currently violate using a version that need Rcpp 0.11.0 when you only have Rcpp 0.10.2 [ very old !! ];
ignore your vendor and update in a local library, pre-pend the
.libPaths()
(seehelp(Startup)
for details)
Lastly, if I may, I find the title of your question misleading. I'd say the error is due to your installation of non-matching version onto your base R (from Vertica). The packages Rcpp, RcppArmadillo and forecast all work just fine in a normal environment.
来源:https://stackoverflow.com/questions/22058225/rcpp-package-and-forecast-package-issues-old-versions