[R-SIG-Mac] Building binary packages for distribution

Marc Schwartz marc_schwartz at me.com
Fri Apr 13 19:48:41 CEST 2012


Hi,

I will readily admit that I am naive in terms of some of the subtleties, but would running Leopard under Lion in a VM be a suitable possibility?

It would seem that with Lion, some of the licensing issues relative to running non-server versions of the older OSX distributions under a VM have changed, at least that it what is intimated by an article here for VMWare Fusion:

  http://www.macworld.com/article/1163755/vmware_fusion_update_lets_users_virtualize_leopard_snow_leopard.html

Not sure if that is helpful, but recalled seeing some discussions on this over the past few months or so.

Regards,

Marc Schwartz

On Apr 13, 2012, at 12:34 PM, Prof Brian Ripley wrote:

> Thanks, that is bad news.
> 
> I really don't want to ask our sysadmins to maintain a Leopard system for the very limited amount of package building we do, so we'll have to hope this suffices.
> 
> On 13/04/2012 18:05, Simon Urbanek wrote:
>> 
>> On Apr 13, 2012, at 11:36 AM, Prof Brian Ripley wrote:
>> 
>>> I have hitherto used a Leopard system to build Mac binary packages
>>> for distribution, but that system has died and we only have Lion
>>> systems left (and the replacement hardware only runs Lion).  I'm
>>> only concerned with building i386/x86_64 packages.
>>> 
>>> We saw problems with packages built on Snow Leopard which would not
>>> run on Leopard, and the trick was to use -mmacosx-version-min=10.5
>>> for compiling and linking.
>>> 
>> 
>> It is only partially sufficient. The min version makes sure that the
>> Mach-O output is 10.5-compatible, but it will still happily use
>> Lion-only libraries when linking. You have to use 10.5 SDK (typically
>> via -isysroot) in order to make sure the linked frameworks and
>> libraries are actually compatible and present on Leopard.
>> 
>> I have at some point contemplated building the R releases and
>> packages on SL with the 10.5 SDK, but it is simply too fragile. There
>> are issues in details of dependencies, such as packages that use
>> configuration scripts to determine flags (like gsl-config) -- you'd
>> have to maintain a full system and worry about paths (linker/include
>> paths may work with -isysroot re-direction but any other paths
>> won't).
>> 
>> That said, it is possible to build R itself that way. I'd even argue
>> that it's better to simply create pre-drivers for compilers that
>> automatically add the corresponding -isysroot et al. and then exec
>> the compiler rather than setting the flags fully.
>> 
>> 
>> 
>>> Does anyone know for certain if that suffices?  And does setting
>>> the environment variable MACOSX_DEPLOYMENT_TARGET to 10.5 do the
>>> same thing?  (My man pages suggest so, but I don't trust Apple's
>>> documentation to be current.)
>>> 
>> 
>> AFAIK, yes, but it is equally insufficient. Apple has been warning
>> about the env vars for a while that they may get rid of them, but I
>> dont' think they did so far (there were more useful ones for managing
>> sysroot which I think they got rid of by now).
>> 
>> Best, Simon
>>



More information about the R-SIG-Mac mailing list