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