- Install jags: in the terminal using homebrew
brew install jags
- Install rjags: in R
install.packages("rjags")
library(rjags)
If you run into a problem like:
configure: error: C++ compiler cannot create executables
It's probably because R is not finding the right compiler, therefore you need to create or modify the file ~/.R/Makevars
Setting the correct CC and CXX, in my case:
CC=clang
CXX=clang++
Do this and then retry install.packages("rjags")
or devtools::install_url
.
I installed jags
via homebrew. However, my homebrew is setup on my home directory (/Users/casallas/homebrew
) rather than the default, /usr/local
.
When I do
install.packages("rjags")
everything works fine, except that loading the library doesn't work:
library(rjags)
Error : .onLoad failed in loadNamespace() for 'rjags', details:
call: dyn.load(file, DLLpath = DLLpath, ...)
error: unable to load shared object '/Users/casallas/Library/R/3.0/library/rjags/libs/rjags.so':
dlopen(/Users/casallas/Library/R/3.0/library/rjags/libs/rjags.so, 10): Library not loaded: /usr/local/lib/libjags.3.dylib
Referenced from: /Users/casallas/Library/R/3.0/library/rjags/libs/rjags.so
Reason: image not found
Error: package or namespace load failed for ‘rjags’
As you can see, rjags
is expecting jags to be in /usr/local
.
The easiest solution is to install rjags
from source, using devtools::install_url
with the following configure.args
, as specified in rjags README:
devtools::install_url("http://sourceforge.net/projects/mcmc-jags/files/rjags/3/rjags_3-2.tar.gz",
args="--configure-args='--with-jags-include=/Users/casallas/homebrew/opt/jags/include/JAGS
--with-jags-lib=/Users/casallas/homebrew/opt/jags/lib'
"
)
I tried to install the package with:
devtools::install_url("http://sourceforge.net/projects/mcmc-jags/files/rjags/3/rjags_3-15.tar.gz",
args="--configure-args='--with-jags-include=/Users/casallas/homebrew/opt/jags/include/JAGS
--with-jags-lib=/Users/casallas/homebrew/opt/jags/lib'
")
Then I got this:
(converted from warning) installation of package ‘/var/folders/nd/ndldk_zn24jg80m122j__9dm0000gn/T//Rtmpi0yBew/file22371c86add/rjags_3-15.tar.gz’ had non-zero exit status
I think there is something wrong with the .gz file?