[Rd] configure / make problems with R-devel
frederik at ofb.net
frederik at ofb.net
Thu May 26 02:29:19 CEST 2016
Hi Martin,
Thanks for the Makefile clue. The file 'non-tarball' was present in
the source directory, but not in the build directory (should the
Makefile be checking for 'non-tarball' in the source directory
instead?). However, 'doc/FAQ' was present in the source directory, so
the first clause of '||' failed.
svnonly:
@if test ! -f "$(srcdir)/doc/FAQ" || test -f non-tarball ; then \
...
It works if I remove 'doc/FAQ'. Incidentally, this file is created by
'make' but not removed by 'make clean'. So the problem is that I
accidentally ran 'make' in the source directory before taking your
advice. I ran 'make clean' out of habit, not even realizing that
'make' in the source directory would break your
separate-build-directory technique.
STRIP=true is highly counterintuitive, but I'm surprised you don't
recognise it - it just replaces the 'strip' command with 'true' so
that my installed binaries get to keep their debugging symbols. Maybe
there is a better way of doing it - I guess you use the binaries in
place so perhaps that is one solution. I'm not sure where I came up
with STRIP=true.
In case anyone skimmed, I think there may be two "action items" here:
1. in Makefile, change
@if test ! -f "$(srcdir)/doc/FAQ" || test -f non-tarball ; then \
to
@if test ! -f "$(srcdir)/doc/FAQ" || test -f "$(srcdir)/non-tarball" ; then \
(I haven't tested it)
2. Figure out how to remove doc/FAQ with 'make clean' (if it makes
sense to do so)
Thanks,
Frederick
On Wed, May 25, 2016 at 12:46:53PM +0200, Martin Maechler wrote:
> >>>>> <frederik at ofb.net>
> >>>>> on Tue, 24 May 2016 15:15:17 -0700 writes:
>
> > Thank you, Martin. I linked to your message in a comment here so maybe
> > other people will know about that useful technique:
>
> > http://singmann.org/installing-r-devel-on-linux/#comment-161
>
> > However, when I try it, I get an error:
>
> > $ make
> > make[1]: Entering directory '/home/frederik/pkg-tmp/R-svn-build/m4'
> > make[1]: Nothing to be done for 'R'.
> > make[1]: Leaving directory '/home/frederik/pkg-tmp/R-svn-build/m4'
> > make[1]: Entering directory '/home/frederik/pkg-tmp/R-svn-build/tools'
> > make[1]: Nothing to be done for 'R'.
> > make[1]: Leaving directory '/home/frederik/pkg-tmp/R-svn-build/tools'
> > make[1]: Entering directory '/home/frederik/pkg-tmp/R-svn-build/doc'
> > /usr/bin/install: cannot stat '../../R-svn/doc/NEWS': No such file or directory
> > /usr/bin/install: cannot stat '../../R-svn/doc/NEWS.pdf': No such file or directory
> > Makefile:164: recipe for target 'svnonly' failed
> > make[1]: *** [svnonly] Error 1
> > make[1]: Leaving directory '/home/frederik/pkg-tmp/R-svn-build/doc'
> > Makefile:60: recipe for target 'R' failed
> > make: *** [R] Error 1
>
> This is strange: Did you accidentally delete the 'non-tarball'
> file in your build directory which should have been created by
> 'configure' ?
>
> I ask because your 'make' seems to be using the 'else' clause in
> the 'svnonly' target in the R-svn-build/Makefile
> but it should really use the first branch which does install
> things in ./doc/ (such as NEWS or NEWS.pdf).
>
> I have never used 'STRIP=true' -- maybe that did remove the
> 'non-tarball' file ?
>
> Why not rather do it the way I told you, i.e., *with* recommended
> packages, and no arguments to 'configure'
> (if that does work, you may try variants.. I agree that
> --without-recommended-packages should work as well, I just never
> use that).
>
> Martin
>
>
> > I configured like this:
>
> > $ cd ../R-svn-build/
> > $ ../R-svn/configure --without-recommended-packages --prefix=$HOME/r-svn-test STRIP=true
>
> > I guess I can try to debug it myself but thought I should report back
> > to you. It works when I 'configure' and 'make' in the source
> > directory.
>
> > Cheers,
>
> > Frederick
>
>
>
> > On Tue, May 24, 2016 at 07:20:18PM +0200, Martin Maechler wrote:
> >> >>>>> Keith O'Hara <keith.ohara at nyu.edu>
> >> >>>>> on Tue, 24 May 2016 12:47:43 -0400 writes:
> >>
> >> > svn checkout https://svn.r-project.org/R/trunk/ <target-directory>
> >>
> >> yes, indeed. thank you, Keith.
> >>
> >> and from then on only
> >>
> >> cd <target-directory>
> >> svn up
> >>
> >> (which is short for 'svn update').
> >>
> >> Another hint: Then do *not* build in the source directory but in
> >> what we called a "build directory"; i.e., something like
> >> (from scratch; including the only-once needed "checkout") :
> >>
> >> svn checkout https://svn.r-project.org/R/trunk/ R
> >> cd R
> >> tools/rsync-recommended
> >> mkdir ../build-R
> >> cd ../build-R
> >> ../R/configure
> >> make
> >> make check
> >>
> >> and I then never run 'make install', but rather use symbolic
> >> link from
> >> ..../build-R/bin/R to something like ~/bin/R-devel
> >> i.e.,
> >> cd ~/bin
> >> ln -s ..../build-R/bin/R R-devel
> >>
> >> Martin
> >>
> >> >> On May 24, 2016, at 12:45 PM, frederik at ofb.net wrote:
> >> >>
> >> >> I agree with Martin's summary of the situation, and with the updated
> >> >> NEWS entry.
> >> >>
> >> >> I'm not familiar with Subversion, can you tell me the command to use?
> >> >>
> >> >> (I tried "svn co https://svn.r-project.org/R/" but it seems to be
> >> >> downloading all branches)
> >> >>
> >> >> Frederick
> >> >>
> >> >> On Tue, May 24, 2016 at 04:30:11PM +0200, Martin Maechler wrote:
> >> >>>>>>>> peter dalgaard <pdalgd at gmail.com>
> >> >>>>>>>> on Tue, 24 May 2016 13:47:27 +0200 writes:
> >> >>>
> >> >>>> I had a regression in config.site so the nightly build didn't. Retrying....
> >> >>>> Looks like it will build, but the ctl-R, ctl-C bug is still present on OSX (w/Simon's libs). This _was_ fixed for a while, was it not?
> >> >>>
> >> >>> I thought it was never fixed, for readline versions 5.x (or all
> >> >>> of readline_version < 6.3 ?) because the patch assumed features
> >> >>> not available, e.g., for Frederik (who got compilation errors
> >> >>> which I think you confirmed on pre-6 readline).
> >> >>>
> >> >>> I remember you having two different readlines installed on OSX
> >> >>> but the standard Mac binary (from CRAN, i.e. Simon) would use
> >> >>> the old readline version ?
> >> >>>
> >> >>> so that whole resetReadline() solution is now conditionalized inside
> >> >>>
> >> >>> #if defined(RL_READLINE_VERSION) && RL_READLINE_VERSION >= 0x0603
> >> >>> ...
> >> >>> ...
> >> >>> #endif
> >> >>>
> >> >>> and hence the previous code (which is buggy) is used for
> >> >>> readline versions < 6.3.
> >> >>> As a consequence the bug is only fixed for readline >= 6.3,
> >> >>> because the current patch did not compile and hence seemed not
> >> >>> appropriate for readline < 6.3 (and hence the above conditionalization).
> >> >>>
> >> >>>
> >> >>>> (The NEWS entry is also wrong: The issue existed before readline 6.3)
> >> >>>
> >> >>> Aah.. you are right. The API change with 6.3 was for the other, the
> >> >>> "SIGWINCH" bug.
> >> >>>
> >> >>> Here's a an update proposal for that NEWS entry :
> >> >>>
> >> >>> • The API for readline libraries >= 6.3 had changed such
> >> >>> terminal window resizes where no longer properly signalled
> >> >>> (PR#16604). Also, ‘Ctrl C’ in incremental search behaved
> >> >>> confusingly in R (unix) consoles (PR#16603) also for older
> >> >>> readline versions. These have been fixed (for readline >=
> >> >>> 6.3 only), thanks to patches by Frederick Eaton.
> >> >>>
> >> >>>
> >> >>> Martin
> >> >>>
> >> >>>> -pd
> >> >>>
> >> >>>> On 24 May 2016, at 12:55 , Martin Maechler <maechler at stat.math.ethz.ch> wrote:
> >> >>>
> >> >>>>>
> >> >>>>> Can you (Frederick, Peter, Keith, but ideally others, too)
> >> >>>>> confirm that you don't see any problems anymore, when building a
> >> >>>>> version of R-devel from sources that are newer
> >> >>>>> than (or equal to) svn revision 70632 (2016-05-19 10:59:51, see below)?
> >> >>>>>
> >> >>>>> I'm asking because the question is open if these should be
> >> >>>>> "back ported" to R 3.3.0 patched or not.
> >> >>>>>
> >> >>>>> Best regards,
> >> >>>>> Martin
> >> >>>>>
> >> >>>>>>>>>> Martin Maechler <maechler at stat.math.ethz.ch>
> >> >>>>>>>>>> on Thu, 19 May 2016 11:02:48 +0200 writes:
> >> >>>>>
> >> >>>>>>>>>> <frederik at ofb.net>
> >> >>>>>>>>>> on Wed, 18 May 2016 15:03:31 -0700 writes:
> >> >>>>>
> >> >>>>>>>> Readline <= 6.2 shouldn't require the SIGWINCH patch, so
> >> >>>>>>>> if older versions have trouble finding rl_resize_terminal
> >> >>>>>>>> then you could wrap a macro around that part.
> >> >>>>>
> >> >>>>>>> I find python related patches that use
> >> >>>>>
> >> >>>>>>> #ifdef HAVE_RL_RESIZE_TERMINAL
> >> >>>>>
> >> >>>>>>> so they must have configured for that. We could and
> >> >>>>>>> probably should do the same, but as a Linux_only guy
> >> >>>>>>> currently (even basically only one flavor of Linux), I'd
> >> >>>>>>> appreciate others to produce code for that.
> >> >>>>>
> >> >>>>> Actually that was easy (in hindsight.. I took too long!)
> >> >>>>> enough, so I've now committed
> >> >>>>>
> >> >>>>> ------------------------------------------------------------------------
> >> >>>>> r70632 | maechler | 2016-05-19 10:59:51 +0200 (Thu, 19 May 2016) | 1 line
> >> >>>>> Changed paths:
> >> >>>>> M configure
> >> >>>>> M configure.ac
> >> >>>>> M src/include/config.h.in
> >> >>>>> M src/unix/sys-std.c
> >> >>>>>
> >> >>>>> check for rl_resize_terminal() now
> >> >>>>> ------------------------------------------------------------------------
> >> >>>>>
> >> >>>>> ... and Keith should even not see the warning anymore
> >> >>>>> (nor Peter the error, when compiling using readline 5.x instead of 6.[23]).
> >> >>>>>
> >> >>>>>
> >> >>>>> [...........]
> >> >>>
> >> >>>> --
> >> >>>> Peter Dalgaard, Professor,
> >> >>>> Center for Statistics, Copenhagen Business School
> >> >>>> Solbjerg Plads 3, 2000 Frederiksberg, Denmark
> >> >>>> Phone: (+45)38153501
> >> >>>> Office: A 4.23
> >> >>>> Email: pd.mes at cbs.dk Priv: PDalgd at gmail.com
> >> >>>
> >>
>
More information about the R-devel
mailing list