Jesper Gådin
2015-Apr-08 16:51 UTC
[Rd] PCRE, and setting C-, LD- and CPP-FLAGS for a local r-devel installation
Hello,
Got some at the time surprising errors some days ago when building a local
r-devel installation on a cluster, with apparent outdated or missing dev
versions of some files. After reading the r-devel news (
https://developer.r-project.org/blosxom.cgi/R-devel/NEWS), it turned out
that " Use of the included versions of ?zlib?, ?bzlib?, ?xz? and PCRE is
deprecated: these are frozen and will eventually be removed. ", and so I
should have expected these errors.
Without being admin, I cannot system wide install or update the software
needed to get the correct headers and libs. So I have to specify all flags
myself. It went well with zlib, bzlib and xz, but not for pcre, which just
does not want to work for me.
My latest ./configure flag creation looks like this:
#bzip2,zlib and xz
bzip2_LD="/gulo/glob/jesper/software/bzip2-1.0.6"
bzip2_CF="/gulo/glob/jesper/software/bzip2-1.0.6"
zlib_LD="/gulo/glob/jesper/software/zlib-1.2.8"
zlib_CF="/gulo/glob/jesper/software/zlib-1.2.8"
xz_CF="/usr/include"
xz_LD="/home/jesper/glob/software/xz/build/lib"
#PCRE
pcre="pcre-8.36"
pcre_CF1="/home/jesper/glob/software/$pcre/build/include"
pcre_CF2="/home/jesper/glob/software/$pcre/sljit"
pcre_CF3="/home/jesper/glob/software/$pcre"
pcre_CF4="/usr/include"
#The pcre was built like this:
./../configure --prefix=/home/jesper/glob/software/pcre-8.36/build
--enable-utf8 --enable-unicode-properties
make CPPFLAGS=-I/usr/include
make install
#step into the correct folder and then run ./configure
cd /home/jesper/glob/software/2015-04-08-r-devel/build
srcdir=".."
$srcdir/configure \
LDFLAGS="-L$bzip2_LD -L$zlib_LD -L$xz_LD -L$pcre_LD"\
CFLAGS="-I$bzip2_CF -I$zlib_CF -I$xz_CF" \
CPPFLAGS="-I$pcre_CF1 -I$pcre_CF2 -I$pcre_CF3 -I$pcre_CF4"
#the last rows of the ouput are
checking for pcre_fullinfo in -lpcre... yes
checking pcre.h usability... yes
checking pcre.h presence... yes
checking for pcre.h... yes
checking pcre/pcre.h usability... no
checking pcre/pcre.h presence... no
checking for pcre/pcre.h... no
checking if PCRE version >= 8.10, < 10.0 and has UTF-8 support... no
checking whether PCRE support suffices... configure: error: pcre library
and headers are required
Hopefully, this is an easy question you. Have spent quite some time
understanding the meaning of the flags and installing software-dependencies
like a maniac. It has been very educative, but am now very much looking
forward to your answers.
/Jesper
[[alternative HTML version deleted]]
Prof Brian Ripley
2015-Apr-09 10:36 UTC
[Rd] PCRE, and setting C-, LD- and CPP-FLAGS for a local r-devel installation
On 08/04/2015 17:51, Jesper G?din wrote:> Hello, > > Got some at the time surprising errors some days ago when building a local > r-devel installation on a cluster, with apparent outdated or missing dev > versions of some files. After reading the r-devel news ( > https://developer.r-project.org/blosxom.cgi/R-devel/NEWS), it turned out > that " Use of the included versions of ?zlib?, ?bzlib?, ?xz? and PCRE is > deprecated: these are frozen and will eventually be removed. ", and so IActually, the NEWS item is ? The included versions of zlib, bzip2, xz and PCRE have been removed, so system versions are required (see the ?R Installation and Administration? manual). At this stage you could have as well tried to install R 3.2.0RC ... R-devel has not yet diverged much.> should have expected these errors.The failure is > checking if PCRE version >= 8.10, < 10.0 and has UTF-8 support... no Look in config.log to be sure (nothing is easy without that), but it looks like the problem is the last condition. For 8.36 --enable-utf8 is a synonym for the preferred --enable-utf and so should have worked.> > Without being admin, I cannot system wide install or update the software > needed to get the correct headers and libs. So I have to specify all flags > myself. It went well with zlib, bzlib and xz, but not for pcre, which just > does not want to work for me. > > My latest ./configure flag creation looks like this: > > #bzip2,zlib and xz > bzip2_LD="/gulo/glob/jesper/software/bzip2-1.0.6" > bzip2_CF="/gulo/glob/jesper/software/bzip2-1.0.6" > zlib_LD="/gulo/glob/jesper/software/zlib-1.2.8" > zlib_CF="/gulo/glob/jesper/software/zlib-1.2.8" > xz_CF="/usr/include" > xz_LD="/home/jesper/glob/software/xz/build/lib" > > #PCRE > pcre="pcre-8.36" > pcre_CF1="/home/jesper/glob/software/$pcre/build/include" > pcre_CF2="/home/jesper/glob/software/$pcre/sljit" > pcre_CF3="/home/jesper/glob/software/$pcre" > pcre_CF4="/usr/include" > > #The pcre was built like this: > ./../configure --prefix=/home/jesper/glob/software/pcre-8.36/build > --enable-utf8 --enable-unicode-properties > make CPPFLAGS=-I/usr/include > make install > > #step into the correct folder and then run ./configure > cd /home/jesper/glob/software/2015-04-08-r-devel/build > srcdir=".." > $srcdir/configure \ > LDFLAGS="-L$bzip2_LD -L$zlib_LD -L$xz_LD -L$pcre_LD"\ > CFLAGS="-I$bzip2_CF -I$zlib_CF -I$xz_CF" \ > CPPFLAGS="-I$pcre_CF1 -I$pcre_CF2 -I$pcre_CF3 -I$pcre_CF4" > > #the last rows of the ouput are > checking for pcre_fullinfo in -lpcre... yes > checking pcre.h usability... yes > checking pcre.h presence... yes > checking for pcre.h... yes > checking pcre/pcre.h usability... no > checking pcre/pcre.h presence... no > checking for pcre/pcre.h... no > checking if PCRE version >= 8.10, < 10.0 and has UTF-8 support... no > checking whether PCRE support suffices... configure: error: pcre library > and headers are required > > > Hopefully, this is an easy question you. Have spent quite some time > understanding the meaning of the flags and installing software-dependencies > like a maniac. It has been very educative, but am now very much looking > forward to your answers. > > /Jesper-- Brian D. Ripley, ripley at stats.ox.ac.uk Emeritus Professor of Applied Statistics, University of Oxford 1 South Parks Road, Oxford OX1 3TG, UK