From ripley at stats.ox.ac.uk  Fri Jan  7 16:18:56 2011
From: ripley at stats.ox.ac.uk (Prof Brian Ripley)
Date: Fri, 7 Jan 2011 15:18:56 +0000 (GMT)
Subject: [Rd] steps for problems compiling a package
In-Reply-To: <4D2633C7.1070707@verizon.net>
References: <4D2633C7.1070707@verizon.net>
Message-ID: <alpine.LFD.2.00.1101071509380.10649@gannet.stats.ox.ac.uk>

On Thu, 6 Jan 2011, egc wrote:

> Recently installed 2.12.1 on my CentOS 5.5 box. Install of R went without 
> incident, and packages downloaded and compiled fine. With one exception -- my 
> interest is somewhat in the problems with this particular package, but more 
> in terms of 'what to do if/when a package' doesn't compile properly.

1) For a source package, download it and unpack the tarball.

2) Read the instructions: you missed the README file, which starts

   The rjags package is an interface to the JAGS library.  In order to
   build a binary package, or install from source, you must have a
   matching installation of the JAGS library.

You might also be unaware of 
http://www-fis.iarc.fr/~martyn/software/jags/

3) If you run

R CMD INSTALL rjags

then config.log will be in the rjags directory.  Which is one reason 
to download and unpack the tarball: it will be in a temporary 
directory if run from install.packages() or INSTALL on the tarball.

4) As for where to ask: see the posting guide!

>
> The offending package (in this instance) is rjags. When I try to install it 
> using
>
> install.packages("rjags",lib="/usr/local/lib64/R/library")
>
> I get the following comiplation messages:
>
> * installing *source* package "rjags? ...
> checking for prefix by checking for jags... /usr/bin/jags
> checking whether the C++ compiler works... yes
> checking for C++ compiler default output file name... a.out
> checking for suffix of executables...
> checking whether we are cross compiling... no
> checking for suffix of object files... o
> checking whether we are using the GNU C++ compiler... yes
> checking whether g++ accepts -g... yes
> checking how to run the C++ preprocessor... g++ -E
> checking for grep that handles long lines and -e... /bin/grep
> checking for egrep... /bin/grep -E
> checking for ANSI C header files... yes
> checking for sys/types.h... yes
> checking for sys/stat.h... yes
> checking for stdlib.h... yes
> checking for string.h... yes
> checking for memory.h... yes
> checking for strings.h... yes
> checking for inttypes.h... yes
> checking for stdint.h... yes
> checking for unistd.h... yes
> checking Console.h usability... no
> checking Console.h presence... no
> checking for Console.h... no
>
> configure: error: in `/tmp/Rtmpb64Khr/R.INSTALL6524e7b4/rjags':
> configure: error: "Problem with header file /usr/include/JAGS/Console.h "
> See `config.log' for more details.
> ERROR: configuration failed for package "rjags?
> * removing ???/usr/local/lib64/R/library/rjags?
>
> The downloaded packages are in
> ?/tmp/RtmpwAo4Qp/downloaded_packages?
> Updating HTML index of packages in '.Library'
> Warning message:
> In install.packages("rjags", lib = "/usr/local/lib64/R/library") :
> installation of package 'rjags' had non-zero exit status
>
>
> So, my questions:
>
> 1. the error messages suggest looking at config.log for details. Will do -- 
> if someone will tell me where to find config.log?
>
> 2. in cases (such as this) where an individual package throws errors on 
> compilation, what is the recommended ("officially sanctified") approach to 
> dealing with -- post question to r-devel, or to the package maintainer?
>
> 3. in this particular instance, the problem seems to be related to a header 
> in /usr/include/JAGS No doubt this is because (in fact) /usr/includes/JAGS 
> doesn't exist. Which I suppose brings me back to question (2).
>
> Thanks in advance...
>
> ______________________________________________
> R-devel at r-project.org mailing list
> https://stat.ethz.ch/mailman/listinfo/r-devel
>

-- 
Brian D. Ripley,                  ripley at stats.ox.ac.uk
Professor of Applied Statistics,  http://www.stats.ox.ac.uk/~ripley/
University of Oxford,             Tel:  +44 1865 272861 (self)
1 South Parks Road,                     +44 1865 272866 (PA)
Oxford OX1 3TG, UK                Fax:  +44 1865 272595


[Rd] steps for problems compiling a package
Prof Brian Ripley