Opened 10 years ago

Closed 9 years ago

#8274 closed defect (duplicate)

R's spkg-install needs a good overhaul.

Reported by: drkirkby Owned by: tbd
Priority: major Milestone: sage-duplicate/invalid/wontfix
Component: packages: standard Keywords: r-project
Cc: jason, was, kcrisman, leif Merged in:
Authors: Reviewers: Karl-Dieter Crisman
Report Upstream: N/A Work issues:
Branch: Commit:
Dependencies: Stopgaps:

Description (last modified by leif)

The spkg-install file for R would appear to need a bit of an overhaul, and some thought given to what is actually needed. This is hardly surprising, given the version r-2.6.1 of R reached patch level p22 in Sage!

There appear to be several issues, which perhaps need addressing.

  • The R installation manual http://cran.r-project.org/doc/manuals/R-admin.pdf documents that fact that there are problems on Linux with early versions of gcc4, but R has been extensively tested with gcc 4.1
  • There is a comment the option '--with-libiconv-prefix' is not working on FreeBSD. In fact, this option is not documented at all in the latest R manual, so perhaps that is why it does not work.
  • There is this patch patches/R.sh.in, which does not appear to me do very much at, as the only significant difference between the version in the patches directory and the version in Sage is commented out.
    # HACK for Sage to avoid hardcoding.  NOthing
    # else has been changed in this file.
    #R_HOME_DIR="${SAGE_LOCAL}/lib/R/"
    #SAGEHACK#
    
    The only other change this patch appears to make is probably undesirable, as it overwrites a line of code related to documentation. However, I might be wrong on this, as another patch appears to be related to this.
  • #7865 documents an error on OpenSolaris - I've not verified if this is an issue with the latest R.
  • From a quick read of the R manual, it would appear better performance is possible if certainly libraries exist. It would seem sensible that notices are issues that better performance can be obtained, and how one might go about that.

Overall, with a previous version having reached patch level 22, I suspect this package needs a bit of a cleanup followed by proper testing on multiple platforms.


See (also) #9906 (and some other tickets). The current version in Sage is meanwhile R-2.10.1.p4 (#10016).

Change History (16)

comment:1 Changed 10 years ago by drkirkby

#8285 addresses

  • SAGE64 problem. Now works on any platform, not just OS X.
  • Removes --with-iconv=no option to configure.
  • Improved testing for X, which allows X to be used on Solaris.

The other issues with R's spkg-install file still remain.

comment:2 Changed 10 years ago by drkirkby

  • Summary changed from R's spkg-install needs a good overhall. to R's spkg-install needs a good overhaul.

comment:3 Changed 10 years ago by drkirkby

  • Cc leif added

Adding Leif as I know he like these sort of things!

Dave

comment:4 follow-up: Changed 10 years ago by leif

And please move the Rpy spkg out of R's...

comment:5 Changed 10 years ago by kcrisman

  • Description modified (diff)

#9201 and #9668 may also be related.

Updated the description as well to reflect drkirkby's comment. However, it is still mystifying to me exactly when R will really compile with png support.

I'm not touching rpy, but you can feel free if you can figure it out.

comment:6 in reply to: ↑ 4 Changed 10 years ago by mpatel

Replying to leif:

And please move the Rpy spkg out of R's...

This is #9906.

comment:7 Changed 10 years ago by drkirkby

Just to note, R has for a very long time built on Solaris now, so the particular issue with it not building on Solaris has been resolved. But the package is still a mess.

Dave

comment:8 Changed 10 years ago by kcrisman

  • Description modified (diff)

comment:9 Changed 9 years ago by kcrisman

  • Component changed from statistics to packages
  • Owner changed from amhou to tbd

Since this really isn't about the statistics, I'm moving this to packages issues.

comment:10 Changed 9 years ago by leif

  • Description modified (diff)

comment:11 Changed 9 years ago by kcrisman

There seem to still be hardcoding issues as well. See this sage-support thread.

Warning: R include directory is empty -- perhaps need to install R- 
devel.rpm or similar 
make: /Users/buildbot/build/sage/bsd-1/bsd_64_binary/build/sage-4.7/ 
local/lib/R/share/make/shlib.mk: No such file or directory 
make: *** No rule to make target `/Users/buildbot/build/sage/bsd-1/ 
bsd_64_binary/build/sage-4.7/local/lib/R/share/make/shlib.mk'.  Stop. 
ERROR: compilation failed for package ‘actuar’ 
* removing ‘/Applications/Sage-4.7-OSX-64bit-10.6.app/Contents/ 
Resources/sage/local/lib/R/library/actuar’ 
The downloaded packages are in 
        ‘/private/var/folders/D8/D8+XDdMDEJ4XIybIIPvnt++++TQ/-Tmp-/RtmpZeAJMz/ 
downloaded_packages’ 
Updating HTML index of packages in '.Library' 
Warning messages: 
1: In install.packages("actuar") : 
  installation of package 'actuar' had non-zero exit status 
2: In file.create(f.tg) : 
  cannot create file '/Users/buildbot/build/sage/bsd-1/bsd_64_binary/ 
build/sage-4.7/local/lib/R/doc/html/packages.html', reason 'No such 
file or directory' 
3: In tools:::unix.packages.html(.Library) : 
  cannot create HTML package index 

comment:12 Changed 9 years ago by kcrisman

Conceivably related, from a sage-support thread where someone had trouble moving the Mac version. Just for reference.

The problem was with hard-coded paths, not the 
permissions.  Anyway, the fix was easy.  I opened all the files listed 
above by George: 
sage/local/lib/R/bin/R 
sage/local/lib/R/bin/libtool 
sage/local/lib/R/etc/Makeconf 
sage/local/lib/R/etc/ldpath 
sage/local/lib/R/etc/Renviron 
sage/local/bin/R 
and edited obvious lines containing hardcoded paths (using find- 
replace-all at once). 

comment:13 follow-up: Changed 9 years ago by kcrisman

  • Milestone changed from sage-4.7.1 to sage-duplicate/invalid/wontfix

It would be helpful to know what exactly needs to be cleaned up.

  • The hardcoding issues are at #9668.
  • The R.sh.in thing is currently used, though it's not clear; #9906 clarifies this
    +=== Patches ===
    + * src/src/scripts/R.sh.in:
    +   Only adds a comment ("#SAGEHACK#") to later, after installation, be
    +   replaced with R_HOME_DIR="${SAGE_LOCAL}/lib/R/", by the Python script
    +   patches/fix_hardcode.
    
  • In fact, #9906 does a LOT of cleanup of the spkg-install. It looks a lot more readable now.
  • #7865 has its own ticket.
  • The !FreeBSD issue is something that should have its own ticket, if it's still an issue.
  • The gcc4 and "performance" issues aren't really about the spkg-install.

So I propose that this be closed, possibly after opening a ticket for the !FreeBSD issue. Ideas?

comment:14 in reply to: ↑ 13 Changed 9 years ago by kcrisman

  • Keywords r-project added
  • Reviewers set to Karl-Dieter Crisman
  • Status changed from new to needs_review
  • The !FreeBSD issue is something that should have its own ticket, if it's still an issue.

This is now #12059. I am suggesting this is ready for closing.

comment:15 Changed 9 years ago by kcrisman

  • Status changed from needs_review to positive_review

comment:16 Changed 9 years ago by jdemeyer

  • Resolution set to duplicate
  • Status changed from positive_review to closed
Note: See TracTickets for help on using tickets.