2011-03-03 684 views
2

我有問題獲取R包的R包調用JAGS(Just Another Gibbs Sampler http://www-ice.iarc.fr/~martyn/software/jags/)。在Mac上安裝rjags和JAGS時出現的問題OsX 10.5.8

我正在運行Mac OS X. 10.5.8 Leopard並使用R64 2.12.1。我從命令行編譯JAGS。然後我在R命令行中安裝了rjags。

install.packages(rjags)

當我嘗試在R中調用rjags時,出現以下錯誤。

> library(rjags) 
    Error : .onLoad failed in loadNamespace() for 'rjags', details: 
    call: dyn.load(file, DLLpath = DLLpath, ...) 
    error: unable to load shared object '/Library/Frameworks/R.framework/Versions/2.12/Resources /library/rjags/libs/x86_64/rjags.so': 
    dlopen(/Library/Frameworks/R.framework/Versions/2.12/Resources/library/rjags/libs/x86_64/rjags.so, 10): Library not loaded: /usr/local/lib/libjags.2.dylib 
    Referenced from: /Library/Frameworks/R.framework/Versions/2.12/Resources/library/rjags/libs/x86_64/rjags.so 
    Reason: no suitable image found. Did find: 
    /usr/local/lib/libjags.2.dylib: mach-o, but wrong architecture 
    /usr/local/lib/libjags.2.dylib: mach-o, but wrong architecture 
    Error: package/namespace load failed for 'rjags' 

我猜rjags引用庫中的一個未知文件存在一些問題,但我不確定。我在命令行是一個相當新手,並與目錄搞亂,所以任何幫助將不勝感激。

回答

2

我發現下面的命令工作對我來說(下載和SourceForge安裝DMG後):

wget http://cran.r-project.org/src/contrib/rjags_2.2.0-4.tar.gz 
wget http://cran.r-project.org/src/contrib/R2jags_0.02-15.tar.gz 
sudo R --with-jags-modules=/usr/local/lib/JAGS/modules-2.2.0 CMD INSTALL rjags_2.2.0-4.tar.gz 
sudo R --with-jags-modules=/usr/local/lib/JAGS/modules-2.2.0 CMD INSTALL R2jags_0.02-15.tar.gz 
sudo R --with-jags-modules=/usr/local/lib/JAGS/modules-2.2.0 --arch=i386 CMD INSTALL rjags_2.2.0-4.tar.gz 
sudo R --with-jags-modules=/usr/local/lib/JAGS/modules-2.2.0 --arch=x86_64 CMD INSTALL rjags_2.2.0-4.tar.gz 

他們肯定不是所有必要的,但他們是足夠的!

1

我在運行Rstudio 0.97.237和R 2.15.2時遇到了同樣的問題。這個問題與JAGS有關。

修復:通過從here下載並安裝JAGS 3-3進行更新。

0

我遇到了錯誤:無法加載共享對象'/Library/Frameworks/R.framework/Resources/modules//R_X11.so':在我的Mac和DuckDuckGo帶我到這篇文章。我從命令行使用R,所以我不能說它如何與RStudio協同工作,儘管我很確定它也是這樣的解決方案。我從另一個答案中提供的the SourceForge link更新了JAGS。我至少可以驗證它是否適用於我,儘管開發人員未經簽名(我需要在安裝過程中忽略MacOS警告)。