[ome-devel] MacOS X version requirements for native code building, and CI requirements

Curtis Rueden ctrueden at wisc.edu
Wed Jan 8 19:29:05 GMT 2014


Hi Roger,

> I'm not too convinced of the merits of hand-building GCC; if what we
> are doing can't be done with Apple's stock toolchain, it makes it very
> difficult for an end-user to replicate the process, and for us to
> maintain the stuff, and I think in general we should be wary of
> customising our CI nodes unless there's really no alternative.

I very much agree. OMERO (especially the OMERO C++ bindings) is already
hard to build. An easier build process is essential to encourage community
contributions.

> most 10.6 and 10.7 systems will be able to upgrade to 10.9.

Well, there are definitely some systems being left in the cold. I have a
MacBook 4 series (circa 2008) which cannot upgrade to 10.9, for example. It
is too bad, because the fact that 10.9 is free would otherwise be a great
excuse to require it!

Regards,
Curtis


On Wed, Jan 8, 2014 at 11:19 AM, Roger Leigh <rleigh at dundee.ac.uk> wrote:

> On 07/01/14 16:45, Sebastien Besson wrote:
>
>  - installed gcc 4.7.3 under /usr/gcc-4.7.3
>>
>
> [Moving this onto -devel, since it's a more general thing.]
>
> This is a more general query regarding native building on MacOS.  I'm
> not too convinced of the merits of hand-building GCC; if what we are
> doing can't be done with Apple's stock toolchain, it makes it very
> difficult for an end-user to replicate the process, and for us to
> maintain the stuff, and I think in general we should be wary of
> customising our CI nodes unless there's really no alternative.  It may
> also be subtly incompatible with the system libraries due to the
> libstdc++ differences, though the libraries themselves are link
> compatible at least on the face of it.
>
> It's my understanding that in general (may not be entirely accurate):
> - If you build on 10.8, g++/clang++ will link with libstdc++ by default,
> and the resulting binaries will run on systems back to 10.6.  The
> version of clang++ (and the corresponding g++ wrapper) should contain
> all the features provided by GCC 4.7, which should remove the need for
> hand-building GCC.  Is this the case?
> - 10.9 defaults to using libc++ (or you can manually select it on 10.8);
> the resulting binaries will run on 10.8 or 10.9 but are incompatible
> with libstdc++.
> - 10.9 is the point of incompatible breakage; 10.8 is the transitional
> step supporting both, but to what extent I'm not sure.
>
> So in terms of providing binaries which are usable by external users, we
> should probably only be building native code for 10.6-10.8 on 10.8, and
> 10.9 on 10.9.  Older code may well continue to run on 10.9, but it's
> quite clear that we will need to build against libc++ from this point,
> and there may be issues if old versions of the libraries linked with
> libstdc++ get dropped.
>
> If we don't already have one, could we look into replacing the 10.6/10.7
> nodes with 10.8?  Additionally, is there any real value in general in
> having 10.6 or 10.7 CI nodes?  The java and python versions aren't
> anything particularly special; we could easily test the same version
> combinations on either Linux or Windows.  Are there any jobs
> specifically requiring these versions which are unable to run on 10.8?
>
> Could we also look into setting up a 10.9 CI node for native building?
> If we are going to support 10.9, it looks like this isn't optional
> unless all the libc++ builds of the dependent libraries are available in
> 10.8 in addition to the libstdc++ variants.  Can anyone comment on that?
>
> In terms of Mac testing, we will soon have a reduced ability to test on
> 10.6 and 10.7; LSC in Dundee are mandating that we upgrade our systems
> to 10.8 since they no longer support the older versions.  This will
> affect our ability to support these releases if we are not testing on
> them routinely (just got my laptop back with 10.8 on it today; was I the
> last one on 10.6?).  That said, it may also be an opportune time to
> review our minimum version requirements since most 10.6 and 10.7 systems
> will be able to upgrade to 10.9.
>
>
> Regards,
> Roger
>
> --
> Dr Roger Leigh -- Open Microscopy Environment
> Wellcome Trust Centre for Gene Regulation and Expression,
> College of Life Sciences, University of Dundee, Dow Street,
> Dundee DD1 5EH Scotland UK   Tel: (01382) 386364
>
> The University of Dundee is a registered Scottish Charity, No: SC015096
> _______________________________________________
> ome-devel mailing list
> ome-devel at lists.openmicroscopy.org.uk
> http://lists.openmicroscopy.org.uk/mailman/listinfo/ome-devel
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.openmicroscopy.org.uk/pipermail/ome-devel/attachments/20140108/015f6a48/attachment.html>


More information about the ome-devel mailing list