[MacPorts] #20222: R-2.9.1 patch to better handle the dynamic libraries
#20222: R-2.9.1 patch to better handle the dynamic libraries ------------------------------+--------------------------------------------- Reporter: blb@… | Owner: kjell.konis@… Type: defect | Status: new Priority: Normal | Milestone: Component: ports | Version: 1.8.0 Keywords: | Port: R ------------------------------+--------------------------------------------- R does some interesting linking to avoid encoding paths into the dylibs it installs (hence the install_name_tool stuff in post-destroot). This means that env variables would need to be set in order to properly run software (like rpy, see #18783 and #18784). A better method would be to patch the build system so the dylibs have the right path right away, making it work better with extensions. Attached is a patch to R (updates Portfile and adds a patch file) which accomplishes this. It gets rpy2 to build and run against it, and R itself appears to still work fine with several demos. -- Ticket URL: <http://trac.macports.org/ticket/20222> MacPorts <http://www.macports.org/> Ports system for Mac OS
#20222: R-2.9.1 patch to better handle the dynamic libraries ------------------------------+--------------------------------------------- Reporter: blb@… | Owner: kjell.konis@… Type: defect | Status: new Priority: Normal | Milestone: Component: ports | Version: 1.8.0 Keywords: | Port: R ------------------------------+--------------------------------------------- Comment(by kjell.konis@…): Port maintainer here. Sorry I have been off the radar so far. Unfortunately I won't be able to test this out for a couple more days (I am on a trip and I didn't bring my laptop). Please make sure that the dylibs (they have a .so file extension) in RHOME/library/*/libs also have the correct paths encoded. Also, is there some problem right now that this patch fixes? I can submit it upstream and it will almost certainly be in the next R release. -- Ticket URL: <http://trac.macports.org/ticket/20222#comment:2> MacPorts <http://www.macports.org/> Ports system for Mac OS
#20222: R-2.9.1 patch to better handle the dynamic libraries ------------------------------+--------------------------------------------- Reporter: blb@… | Owner: kjell.konis@… Type: defect | Status: new Priority: Normal | Milestone: Component: ports | Version: 1.8.0 Keywords: | Port: R ------------------------------+--------------------------------------------- Comment(by blb@…): This updates the libraries in ${prefix}/lib/R/lib to have the full path encoded, as otherwise anything which wants to link to R would need to have a DYLD environment variable set to see it properly. This initially came up due to ticket #18784. The files in RHOME/library/*/libs are .so files so I'm guessing they are dlopen()'d right? If so, they don't need a path encoded since dlopen() is going to need a full path prior to even touching them. As far as upstream, I'm guessing this won't happen since it seems like they want R to be easily relocatable by default, hence this would seem to be somewhat MacPorts-specific. -- Ticket URL: <http://trac.macports.org/ticket/20222#comment:3> MacPorts <http://www.macports.org/> Ports system for Mac OS
#20222: R-2.9.1 patch to better handle the dynamic libraries ------------------------------+--------------------------------------------- Reporter: blb@… | Owner: kjell.konis@… Type: defect | Status: new Priority: Normal | Milestone: Component: ports | Version: 1.8.0 Keywords: | Port: R ------------------------------+--------------------------------------------- Comment(by kjell.konis@…): I am unable to get R to build with these modifications (OS X 10.4, ppc). That's why this is taking so long ): -- Ticket URL: <http://trac.macports.org/ticket/20222#comment:4> MacPorts <http://www.macports.org/> Ports system for Mac OS
#20222: R-2.9.1 patch to better handle the dynamic libraries ------------------------------+--------------------------------------------- Reporter: blb@… | Owner: kjell.konis@… Type: defect | Status: new Priority: Normal | Milestone: Component: ports | Version: 1.8.0 Keywords: | Port: R ------------------------------+--------------------------------------------- Comment(by mmoll@…): I can confirm that the patch works on OS X 10.5. If the rpy bug mentioned above does not occur on 10.4, maybe the patch can be wrapped in a darwin_9 (and darwin_10?) variant. -- Ticket URL: <http://trac.macports.org/ticket/20222#comment:5> MacPorts <http://www.macports.org/> Ports system for Mac OS
#20222: R-2.9.1 patch to better handle the dynamic libraries ------------------------------+--------------------------------------------- Reporter: blb@… | Owner: kjell.konis@… Type: defect | Status: new Priority: Normal | Milestone: Component: ports | Version: 1.8.0 Keywords: | Port: R ------------------------------+--------------------------------------------- Comment(by kjell.konis@…): OK, R.3.diff actually does what I said R.2.diff would do. Sorry. Also fixes 21450. -- Ticket URL: <http://trac.macports.org/ticket/20222#comment:7> MacPorts <http://www.macports.org/> Ports system for Mac OS
#20222: R-2.9.1 patch to better handle the dynamic libraries -------------------------------+-------------------------------------------- Reporter: blb@… | Owner: kjell.konis@… Type: defect | Status: closed Priority: Normal | Milestone: Component: ports | Version: 1.8.0 Resolution: fixed | Keywords: Port: R | -------------------------------+-------------------------------------------- Changes (by jmr@…): * status: new => closed * resolution: => fixed Comment: Applied in r58123. -- Ticket URL: <http://trac.macports.org/ticket/20222#comment:8> MacPorts <http://www.macports.org/> Ports system for Mac OS
participants (1)
-
MacPorts