[tex-live] Platform & library check on macOS during TL 2018 installation

Mojca Miklavec mojca.miklavec.lists at gmail.com
Sun Mar 18 18:56:02 CET 2018


Dear Norbert,

This year the 64-bit darwinlegacy binaries will only have
partial/conditional support for Mac OS X 10.6 (and full support for
10.7 and newer). Unless I do some weird tricks (which are certainly
possible, but I would prefer to avoid them, see below) they would not
work out-of-the-box on 10.6 unless the users install libc++. Basically
the binaries would crash immediately due to lack of that library.

There must be various ways to install the library, the easiest one
that I'm familiar with is to install one package with MacPorts, or in
fact just extract the 855K big binary package from
http://packages.macports.org/libcxx/ to the right location.
(I have absolutely no idea how HomeBrew handles C++11 on older
systems, if at all.)

I have one request / suggestion: would it be possible for the
installer to check if the system is darwin10, and if so, check whether
libc++ is present on the system, and if not, print an error saying
that it cannot proceed unless the user installs the library?

We have various options in principle:
- Like Akira provides some MSVC libraries together with binaries, we
could provide libc++ with darwinlegacy binaries as well. The downside
is that I would have to do some special relinking of the binaries
after the build to tell the binaries that they could use libc++ from a
different location than /usr/lib (but keep using the one in /usr/lib
if the library exists there).
- One option would be to simply install the library on the system if
one doesn't exist yet. I'm not a huge fan of this option either unless
the user explicitly agrees to it.
- One option is to print a warning and quit the installer.
- Yet another option is to use some compatibility mode when compiling
and link against libstdc++ version 2 (pre-C++11) which mostly works
according to my experience, but it's probably not worth the trouble
given that literally all other OSes supported by these binaries fully
support libc++.

To me a warning with some simple instructions seems to make most
sense. Any thoughts?

Mojca


More information about the tex-live mailing list